EMZETT.
Login

Podman and Docker compared

In short: Podman and Docker operate containers almost identically. The key difference: Podman needs no permanently running service with root rights and runs without administrator rights by default (rootless).

In more detail: The commands are largely compatible: podman run instead of docker run. Many use alias docker=podman.

In detail

FeatureDockerPodman
Background serviceyes (daemon dockerd)no (daemonless)
Rootlesspossibledefault
Composedocker composepodman compose / podman-compose, Quadlets
Podsnoyes (like Kubernetes)
systemdvia servicesQuadlet files, podman generate systemd
Adoptionvery highdefault on Fedora/RHEL
  • Example: podman run -d -p 8080:80 docker.io/library/nginx.
  • Images: both use OCI images, registries: Docker Hub, GitHub Container Registry, Quay.
  • Containerfile/Dockerfile: same format.
  • Security: rootless operation limits the damage of an escape.
  • Development: Docker Desktop (Windows/Mac), Podman Desktop, Rancher Desktop, Distrobox/Toolbox for development environments.

See also: Containers on Linux: namespaces and cgroups, Docker