Podman - Docker Alternative
Podman is a daemonless alternative to Docker that works with OCI compatible containers. Podman’s CLI works just like Docker - you can even alias it with alias docker=podman, and forget you are using it.
podman compose is an alias to docker compose, and is available only if you install Docker Compose.
Important commands
podman build: build a Containerfile.podman exec: run a process inside a running container.podman image <subcommand>: manages images.podman images: lists images in local repository.podman info: displays the Podman system information. Useful for debugging.podman inspect: display artifact, container, image, volume, network, or pod’s configuration.podman kube <subcommand>: plays containers, pods or volumes based on structured configuration.podman kube generate: generates Kubernetes manifests.
podman logs: displays container logs.podman network <subcommand>: tool for managing networks.podman pod <subcommand>: management tool for groups of containers, called pods (like in K8s).podman ps: lists running containers.podman pull: pull an image from a registry.podman pushpush an image to a registry.podman quadlet <subcommand>: management tool for quadlets, a way of declaring containers, pods, networks and images using systemd unit files.podman rm: remove one or more containers.podman run: runs a command inside of a new container.podman start: start one or more containerspodman stop: stop one or more containerspodman volume <subcommand>: manage volumes.podman wait: block on one or more containers. Useful when there is a dependency between containers.
What are pods?
Podman pods are similar to the Kubernetes ones, where you group multiple containers into a unit. They can be used as an alternative to Docker Compose.
podman pod <subcommand>is used to manage pods:create,existsandlist.inspectdisplays the pod configurationkillto kill andrmto remove a podstart,restartandstop
You can add a container to a pod using --pod when creating a container.
You can also leverage Kubernetes YAML (kind: Pod) to manage pods declaratively using podman kube play.
What are quadlets?
Quadlet is a tool for running Podman containers under systemd, very similar to how you regiser a service (or unit in systemd lingo).