We moved from docker to podman about 15 months ago, and I'm never going back. I (personally) love the quadlet (read: systemd) integration, that makes it so much easier to monitor a set of running services, be they regular systemd services or containers. Running rootless is as straightforward as it gets and on top of it, podman is blazingly fast. I, personally, don't miss docker compose all that much, but I understand if the lack of docker compose is a showstopper for others. I've never tried podman's compose plugin.

The one big reason I dread giving up compose files is that they're a great way to have system agnostic documentation on how to setup a new stack. That means every developer can just start the thing locally, and it's pretty much the same as on the server (and everyone elses laptop).

Podman doesn't officially support any thing platform agnostic. How do you (or anyone) deal with this for a project in active development?

podman can work with kube files, which is the YAML format from Kubernetes. That's more "platform agnostic" than docker-compose. And it can be read as a documentation in the same way.

Kubernetes isn’t a great example of you can just read it like a document. The resource kind jargon is huge.

Most compose files are small and use familiar linux jargon.

I can give an non-dev IT person a compose file and they can understand every key. I can’t do that with K8s or Quadlet.

You don't have to learn much resource jargon for a quadlet, just the Pod type, and a relatively small subset of it at that (you're not going to be using things like selectors or priority classes). And there's a script that can convert a compose file to a quadlet, so you don't have to do it from scratch.

I use podman and almost exclusively start containers using podman compose. Haven't noticed any issues after migrating from docker.