Complete Podman commands reference — 61 commands across 5 categories. Quick reference cheat sheet for Linux & Mac.
Podman's command set is intentionally a superset of Docker's, so podman run, podman ps and podman build behave the way their Docker namesakes do and alias docker=podman gets most people through the day. What this page adds is the Podman-only surface — pods, Kubernetes YAML, rootless operation and the machine command — which is where the two tools stop being interchangeable.
| Shortcut | Action |
|---|---|
| podman artifact | Manage OCI artifacts |
| podman build | Build a container image using a Containerfile |
| podman history | Show the history of an image |
| podman image | Manage images |
| podman images | List images in local storage |
| podman import | Import a tarball and save it as a filesystem image |
| podman inspect | Display artifact, container, image, volume |
| podman load | Load image(s) from tar archives, directories |
| podman manifest | Create and manipulate manifest lists and image |
| podman pull | Pull an image from a registry |
| podman push | Push an image, manifest list or image index |
| podman rmi | Remove one or more locally stored images |
| podman save | Save image(s) to an archive or directory |
| podman search | Search a registry for an image |
| podman tag | Add an additional name to a local image |
| podman untag | Remove one or more names from a locally-stored image |
| Shortcut | Action |
|---|---|
| podman attach | Attach to a running container |
| podman commit | Create new image based on the changed container |
| podman container | Manage containers |
| podman cp | Copy files/folders between a container |
| podman create | Create a new container |
| podman diff | Inspect changes on a container or image's filesystem |
| podman exec | Execute a command in a running container |
| podman export | Export a container's filesystem contents as a tar |
| podman init | Initialize one or more containers |
| podman kill | Kill the main process in one or more containers |
| podman logs | Display the logs of one or more containers |
| podman pause | Pause one or more containers |
| podman port | List port mappings for a container |
| podman ps | Print out information about containers |
| podman rename | Rename an existing container |
| podman restart | Restart one or more containers |
| podman rm | Remove one or more containers |
| podman run | Run a command in a new container |
| podman start | Start one or more containers |
| podman stats | Display a live stream of one or more container's |
| podman stop | Stop one or more running containers |
| podman top | Display the running processes of a container |
| podman unpause | Unpause one or more containers |
| podman update | Update the configuration of a given container |
| podman wait | Wait on one or more containers to stop and print |
| Shortcut | Action |
|---|---|
| podman farm | Farm out builds to machines running podman |
| podman mount | Mount a working container's root filesystem |
| podman network | Manage Podman networks |
| podman quadlet | Allows users to manage Quadlets |
| podman secret | Manage podman secrets |
| podman unmount | Unmount a working container's root filesystem |
| podman volume | Simple management tool for volumes |
| Shortcut | Action |
|---|---|
| podman compose | Run Compose workloads via an external compose |
| podman generate | Generate structured data based on containers, pods |
| podman kube | Play containers, pods or volumes based |
| podman pod | Management tool for groups of containers, called |
| Shortcut | Action |
|---|---|
| podman events | Monitor Podman events |
| podman healthcheck | Manage healthchecks for containers |
| podman info | Display Podman related system information |
| podman login | Log in to a container registry |
| podman logout | Log out of a container registry |
| podman machine | Manage Podman's virtual machine |
| podman system | Manage podman |
| podman unshare | Run a command inside of a modified user namespace |
| podman version | Display the Podman version information |
Container lifecycle is podman run, podman ps, podman logs, podman exec and podman stop in that order of frequency, and podman rm removes a stopped container. Images follow the same pattern with podman pull, podman images, podman build and podman rmi. The one habit to break is expecting a daemon: there is no background service, so a container started in the foreground stops when its terminal closes unless you detach it.
podman pod groups containers that share a network namespace, the same model Kubernetes uses, and podman kube plays a Kubernetes YAML file directly — the fastest way to try a deployment manifest on a laptop. podman generate goes the other way and produces YAML or systemd units from running containers; podman quadlet manages the declarative unit files that let systemd own container lifecycle on a server. podman unshare opens a shell inside your rootless user namespace, which is how you fix file ownership on volumes that look wrong from the host.
Because Podman needs a Linux kernel, podman machine creates and manages the virtual machine that runs containers on macOS and Windows; podman machine start is the first command on those platforms and the cause of most "cannot connect" errors when forgotten. podman system holds the maintenance verbs — prune, reset, and the connection list that tells you which machine or remote host commands are going to. podman info prints the effective configuration, including whether the current session is rootless.
Yes. The core commands are identical in name and behaviour, and alias docker=podman is a supported approach. Compose workloads use podman compose, which drives an external compose provider.
There is no daemon. Run it detached (-d) or manage it with systemd via podman generate or Quadlet.
A group of containers sharing a network namespace, like a Kubernetes pod. Create one with podman pod and add containers to it with --pod.
Rootless Podman maps container UIDs into your user namespace. Use podman unshare to open a shell where the mapping is applied and fix ownership there.
Open your assistant with this page preloaded as the source — great for follow-up questions like "which of these work in other apps?"