← Back to context

Comment by bityard

3 days ago

What does the docker CLI give you that the podman CLI doesn't? (Surely you aren't suggesting that `docker compose` works with a podman rootless daemon?)

It certainly does!

For what it's worth, podman has also a thin wrapper around docker compose (podman compose) which can also automatically select `podman-compose`.

Note:

- `podman-compose` is an early attempt at remaking `docker-compose` but for Podman.

- Later Podman wrote a Docker compatible socket instead, which can work with most docker clis that accept a `DOCKER_HOST` argument, including `docker` and `docker-compose` (both v1 and v2)

- `podman compose` is a thin wrapper that automatically selects `docker-compose` or `podman-compose` depending on which is installed.

It works perfectly well. Try it out :)

  • Well that's pretty interesting, then. And it handles named volumes and isolated networks between containers?

    • Yes. All of that works in my experience. It's a drop in replacement. You set it up once in the docker CLI with `docker context ` or just symlink it to the right location. Then you can forget about it basically.

      I use this on my server with compose together with traefik which listens on 127.0.0.1:{8000,4433}. Then I have a small nftables config that does the port forwarding to 80/443.