Linux Command: podman
Daemonless rootless container management tool
The podman command is a next-generation container engine that manages OCI containers without requiring a daemon or root privileges. Developed by Red Hat, Podman provides a Docker-compatible CLI while offering superior security through its rootless-first, daemonless architecture. Unlike Docker, which relies on a long-running dockerd daemon with root privileges, Podman runs each container as a direct child process of the user. This eliminates the single point of failure risk and reduces the attack surface significantly. Podman is the default container engine on RHEL 8+, Fedora, CentOS Stream, and AlmaLinux. Podman introduces native pod support — the ability to group multiple containers sharing the same network namespace, directly mirroring the Kubernetes pod concept. This makes Podman an excellent tool for local Kubernetes development, as you can generate Kubernetes YAML from running pods and vice versa. The Podman ecosystem includes Buildah (for building images without a Dockerfile), Skopeo (for inspecting and copying images between registries), and Quadlet (for running containers as systemd services). Together, they provide a complete, daemonless container management solution.
Syntax
podman [OPTIONS] COMMAND [ARG...]Common Examples
podman run -d --name myapp -p 8080:80 nginx:alpine— Run a container as your regular user without sudo. Rootless by default — no daemon, no root privileges.podman pod create --name webapp -p 8080:80 -p 5432:5432 && podman run -d --pod webapp --name web nginx:alpine && podman run -d --pod webapp --name db postgres:16-alpine— Create a pod and add web + database containers sharing the same network namespace (localhost communication).podman generate kube webapp > webapp.yaml— Export a running pod as Kubernetes-compatible YAML. Deploy to K8s with kubectl apply -f webapp.yaml.podman generate systemd --name web --files --new && cp container-web.service ~/.config/systemd/user/ && systemctl --user enable --now container-web— Generate a systemd unit file and install it as a user service. Container auto-starts on boot.
Pro Tips
Master this and 230+ other Linux commands with our comprehensive eBooks and cheat sheets.
Related Resources