Time to Go All In for Podman


Docker Compose support lands in Podman 3.0.0 (dev as of 3rd Feb, GA soon). It can finally work seamlessly with Docker Compose as drop-in replacement to orchestrate containers.

NOTE: Initial support, rootless not yet supported.


What is podman?

Daemonless container engine for managing OCI compliant containers on Linux.

For a long time, missing Docker Compose equivalent feature (to orchestrate multiple containers on single container runtime host) is a deal-breaker.

The podman-compose script is an option but it’s nowhere near drop-in replacement. Lost count on how many times I had to modify the docker-compose.yml file to make it work.

Docker CE had been working well for my use cases for a long time (Dockerfile, Compose, etc.).

Reason why I started using podman: Fedora 31 onwoards, Docker CE started to hit cgroup v2 support issue, the removal of docker-ce from official DNF repo ative package / repo issues (lag behind).

Enable podman.socket which implements Docker REST API and exposes a UNIX domain socket as backend, to provide feature parity (still daemonless?) ;-)

It can also generate YAML (and systemd units) to streamline the workflow to migrate from dev to production, from workstation to single host container runtime engine and/or production k8s clusters.

NOTE: Not all distributions provides podman-compose package (Arch / Manjaro and Fedora do AFAIK).

Podman alone cannot replace Docker CE. You’ll need the complete next generation container toolchain: Podman, Buildah (building OCI container images), Skopeo (working with remote contianer registries).