podman-remote(1)
π podman-remote(1) β General Commands Manual π
okay bestie, welcome to the remote CLI for Podman: the simple management tool for pods, containers and images. this is the glow-up version of the manpage, same facts, immaculate vibes β¨
πΈ NAME πΈ
podman-remote β a remote CLI for Podman: a simple management tool for pods, containers and images. π«Ά
β¨ SYNOPSIS β¨
podman-remote [options] command
π¦ DESCRIPTION π¦
so like. Podman (short for Pod Manager, obsessed with the name) is a fully featured container engine that's a simple, daemonless tool. no daemon drama, no cap. π
Podman gives you a Docker-CLI comparable command line that makes the transition from other container engines genuinely effortless, and lets you manage pods, containers and images. simply put:
alias docker=podman
periodt. and the best part? most Podman commands can be run as a regular user, no extra privileges required. main character energy, lowkey.
Podman uses Buildah(1) internally to create container images. both tools share image (not container) storage, which means each one can use or manipulate images (but not containers) created by the other. sharing is caring π
Now for the remote part, which is literally the whole point of this page: podman-remote provides a local client interacting with a Podman backend node through a RESTful API tunneled through an ssh connection. in this context, a Podman node is a Linux system with Podman installed on it and the API service activated. credentials for this session can be passed in using flags, environment variables, or in containers.conf. β¨
the containers.conf file lives under:
$HOME/.config/containers/containers.confon Linux and Mac%APPDATA%\containers\containers.confon Windows
and also, just so you have it:
podman [GLOBAL OPTIONS]
π GLOBAL OPTIONS π
π« --connection=name, -c π«
Remote connection name. π
Overrides environment variable CONTAINER_CONNECTION if set.
π« --help, -h π«
Print usage statement. iconic, honestly.
π« --identity=path π«
Path to ssh identity file. if the identity file has been encrypted, Podman prompts the user for the passphrase. if no identity file is provided and no user is given, Podman defaults to the user running the podman command. Podman prompts for the login password on the remote server. π
Identity value resolution precedence:
- command line value
- environment variable
CONTAINER_SSHKEY, ifCONTAINER_HOSTis found containers.conf
π« --log-level=level π«
Log messages above specified level: debug, info, warn, error (default), fatal or panic. error is the default btw, so if you want the tea you gotta ask for it π
π« --url=value π«
URL to access Podman service (default from containers.conf, rootless unix:///run/user/$UID/podman/podman.sock or as root unix:///run/podman/podman.sock).
CONTAINER_HOSTis of the format<schema>://[<user[:<password>]@]<host>[:<port>][<path>]CONTAINER_PROXYis of the format<socks5|socks5h>://[<user[:<password>]@]<host>[:<port>]
Details:
- schema is one of:
- user defaults to either
rootor the current running user (ssh only) - password has no default (ssh only)
- host must be provided and is either the IP or name of the machine hosting the Podman service (ssh and tcp)
- port defaults to
22(ssh and tcp) - path defaults to either
/run/podman/podman.sock, or/run/user/$UID/podman/podman.sockif running rootless (unix), or must be explicitly specified (ssh) CONTAINER_PROXY: use proxy (socks5orsocks5h) to access Podman service (tcp only)
URL value resolution precedence:
- command line value
- environment variable
CONTAINER_HOST engine.service_destinationstable incontainers.conf, excluding the/usr/share/containersdirectoryunix:///run/podman/podman.sock
Remote connections use local containers.conf for default.
Some example URL values in valid formats:
unix:///run/podman/podman.sockunix:///run/user/$UID/podman/podman.sockssh://notroot@localhost:22/run/user/$UID/podman/podman.sockssh://root@localhost:22/run/podman/podman.socktcp://localhost:34451tcp://127.0.0.1:34451
π« --version π«
Print the version. slay. π
π Environment Variables π
Podman can set up environment variables from env of [engine] table in containers.conf. these variables can be overridden by passing environment variables before the podman commands. π
CONTAINERS_CONF
Set default locations of containers.conf file.
CONTAINER_CONNECTION
Set default --connection value to access Podman service.
CONTAINER_HOST
Set default --url value to access Podman service.
CONTAINER_SSHKEY
Set default --identity path to ssh key file value used to access Podman service.
π Exit Status π
the exit code from podman gives information about why the container failed to run or why it exited. when podman commands exit with a non-zero code, the exit codes follow the chroot standard, see below π
125 β The error is with podman itself
$ podman run --foo busybox; echo $?
Error: unknown flag: --foo
125
126 β Executing a contained command and the command cannot be invoked
$ podman run busybox /etc; echo $?
Error: container_linux.go:346: starting container process caused "exec: \"/etc\": permission denied": OCI runtime error
126
127 β Executing a contained command and the command cannot be found
$ podman run busybox foo; echo $?
Error: container_linux.go:346: starting container process caused "exec: \"foo\": executable file not found in $PATH": OCI runtime error
127
Exit code contained command exit code
$ podman run busybox /bin/sh -c 'exit 3'; echo $?
3
bestie this is only part 1, there's more coming so don't go anywhere π
β¨ COMMANDS β¨
okay bestie, here's the whole squad π every single one of these is its own manpage, and honestly? they're all icons. go read them when you need the deets, but here's the vibe check first:
podman-attach(1)β attach to a running container. like, you just wanna be in there with it π«Άpodman-build(1)β build a container image using a Dockerfile. the classic glow-up pipeline β¨podman-commit(1)β create a new image based on the changed container. lock in those edits, periodt.podman-container(1)β manage containers. the whole container management moment πpodman-cp(1)β copy files/folders between a container and the local filesystem. lil file teleportation π¦podman-create(1)β create a new container. no running yet, just vibes πΈpodman-diff(1)β inspect changes on a container or image's filesystem. see what got messy πpodman-events(1)β monitor Podman events. the group chat feed fr fr πpodman-export(1)β export a container's filesystem contents as a tar archive. yeet it into a.tarπ¦podman-generate(1)β generate structured data based on containers and pods. it's giving structured data πpodman-healthcheck(1)β manage healthchecks for containers. keeping your babies thriving πpodman-history(1)β show the history of an image. the image's whole lore πpodman-image(1)β manage images. image management central, iykykpodman-images(1)β list images in local storage. see what's sitting in your local storage πpodman-import(1)β import a tarball and save it as a filesystem image. reverse of the yeet βpodman-info(1)β display Podman related system information. the system's whole biography πpodman-init(1)β initialize a container. wake it up gently π§podman-inspect(1)β display a container or image's configuration. full tea, no filter πpodman-kill(1)β kill the main process in one or more containers. dramatic but necessary πpodman-load(1)β load an image from a container image archive into container storage. bring it back into container storage πpodman-logs(1)β display the logs of a container. read the receipts πpodman-pause(1)β pause one or more containers. freeze frame, main character pause βpodman-pod(1)β management tool for groups of containers, called pods. pods are just friend groups fr π«podman-port(1)β list port mappings for a container. where the ports at π₯podman-ps(1)β print out information about containers. the "who's here rn" check πpodman-pull(1)β pull an image from a registry. come thruuu β¬οΈpodman-push(1)β push an image from local storage to elsewhere. send it, bestie β¬οΈpodman-restart(1)β restart one or more containers. the lil reset button π¦podman-rm(1)β remove one or more containers. bye boo πpodman-rmi(1)β remove one or more locally stored images. also bye, but for images stored locally πpodman-run(1)β run a command in a new container. the big one. the moment. β¨podman-save(1)β save an image to a container archive. archive that fit πΎpodman-start(1)β start one or more containers. go go go πpodman-stop(1)β stop one or more running containers. okay that's enough, bestie πpodman-system(1)β manage podman. yes, podman manages itself. iconic. πpodman-tag(1)β add an additional name to a local image. more names = more to love π·οΈpodman-top(1)β display the running processes of a container. who's doing what in there πpodman-unpause(1)β unpause one or more containers. unfreeze, you're back β¨
podman-version(1)β shows you all the Podman version info, like, everything. version check era β¨podman-volume(1)β manages your Volumes. storage bestie πΎ
π FILES π
containers.conf ($HOME/.config/containers/containers.conf)
okay so real talk β Podman comes with builtin defaults for all its command line options, right? and those defaults can get overridden by the containers.conf config files. the more you know π
If you wanna change those defaults, you just make a file at $HOME/.config/containers/containers.conf. If it exists, Podman takes its builtin defaults and merges them together with whatever fields you put in that file. Anything you specified in your file? yeah, that overrides the built-in defaults. you win, periodt. π
And if there's no containers.conf file anywhere? Podman just uses the builtin defaults. no drama, no file, no problem. π«Ά
π SEE ALSO π
podman(1), podman-system-service(1), containers.conf(5)
π οΈ Troubleshooting π οΈ
Stuck? confused? something acting up and you're like "why is this happening to me specifically"? π go read podman-troubleshooting(7) β it's got solutions to common issues, iykyk. your little helper π§
and that's the whole page bestie!! π the footer down there says it's podman-remote(1), with its date chillin' right next to it β that's the source/version stamp, the lil' signature at the bottom. iconic. you made it to the end πβ¨
π¦ where this page comes from
- arch rolling: podman-docker 6.1.4-1 Β· Apache-2.0
- centos-stream 10: podman-docker 7:6.1.0-2.el10 Β· Apache-2.0 AND BSD-2-Clause AND BSD-3-Clause AND ISC AND MIT AND MPL-2.0
- centos-stream 9: podman-docker 6:5.8.5-2.el9 Β· Apache-2.0 AND BSD-2-Clause AND BSD-3-Clause AND ISC AND MIT AND MPL-2.0
- fedora 43: podman-docker 5:5.6.2-1.fc43 Β· Apache-2.0 AND BSD-2-Clause AND BSD-3-Clause AND ISC AND MIT AND MPL-2.0
- fedora 43: podman-docker 5:5.8.4-1.fc43
- fedora 43: podman-docker 5:5.8.8-1.fc43
- fedora 43: podman-docker 5:5.8.9-1.fc43 Β· Apache-2.0 AND BSD-2-Clause AND BSD-3-Clause AND ISC AND MIT AND MPL-2.0
- fedora 44: podman-docker 5:5.8.7-1.fc44
- fedora 44: podman-docker 5:5.8.9-1.fc44 Β· Apache-2.0 AND BSD-2-Clause AND BSD-3-Clause AND ISC AND MIT AND MPL-2.0
- ubuntu resolute: podman-docker 5.7.0+ds2-3build1 Β· Apache-2.0
- ubuntu stonking: podman-docker 5.8.6+ds1-2 Β· Apache-2.0
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms