What does HackerNews think of podman-compose?

a script to run docker-compose.yml using podman

Language: Python

I’m dumb. When I wrote the article it was late. Docker-Compose really was a game changer.

Yea Podman compose exists. I’ll add a section about docker compose to it in an update.

https://github.com/containers/podman-compose

In addition to the sibling comment (which mentions that you can use the original docker-compose) such a CLI-compatible reimplementation also exists [0]. It's not always a 100% drop-in replacement, but gets you pretty far in my experience.

[0] https://github.com/containers/podman-compose

Ive been using Podman for a while for my non-Kubernetes cloud deployments (i.e. small VM based things).

It's worked very well for me after a few initial hiccups a year or so ago.

Now that Podman-compose[0] is in the works, it'll really be comparable in the UX space soon, and outperforms Docker in several ways when it comes to security.

The key difference with Podman compared to Docker is that is does not run a deamon as root, like Docker does, thus all containers are created with the privilege level of the user who created it.

This can be a learning curve for those used to Docker as privileges (e.g. for filesystems, files) and capabilities (e.g. for devices, low level networking) need to be handled more explicitly as opposed to Docker's approach of "simon (root) says".

Additionally, Podman is very light weight due to the lack of a daemon since there is no service or supporting software which needs to run beyond the capabilities baked into Linux.

[0] https://github.com/containers/podman-compose

EDIT TO ADD: I run Linux both on desktop and server so I have no data for usage in Windows/Mac. Docker Desktop, as I understand it, is a Linux VM.

podman has been an amazing project to follow. Since early 2020 I've been using it for rootless containers with no daemon on my Linux development environment. Development pace is picking up and I get excited every time I get a notification from GitHub about a new tagged release.

As a bonus, the podman-compose script https://github.com/containers/podman-compose/ is getting good too!

There is podman-compose, but it is most definitely missing features vs. docker-compose (as in whole subcommands are absent). I cannot remember what (if any) missing podman features remain, but I do run into occasional bugs and regressions with certain functionality.

Curious you mention needing `--format=docker`; I’ve pushed images to Docker Hub without doing that without issue.

https://github.com/containers/podman-compose

For starters, Podman doesn't support anything like Docker Compose ( https://docs.docker.com/compose/ ) out of the box, which makes it harder to orchestrate deployments that need multiple containers locally.

There is podman-compose as a drop-in ( https://github.com/containers/podman-compose ), but last i checked it wasn't supported by or developed by RedHat themselves, hence no first-party support. In addition to that, the feature parity just isn't there.

Also, there is no docker.sock, which tools like Portainer ( https://www.portainer.io/ ) need to interface with Docker, hence no control web apps and other tools are available for Podman.

Besides that, there is also Docker Swarm ( https://docs.docker.com/engine/swarm/ ), a lightweight orchestrator which can be a simpler alternative to Kubernetes in smaller and more resource constrained environments, which isn't available in Podman. In addition to that, Docker Swarm's deployment format is also extremely similar to the Docker Compose one (with additional functionality added for multi node clusters), which allowed for getting started with container orchestration in a more simple fashion.

If you're in a Kubernetes shop and simply need something for Kubernetes to interface with, then containerd (which Docker uses internally) and Podman are largely comparable.

In other circumstances, Podman doesn't have complete feature parity with Docker, despite popular claims and despite its architectural improvements.

podman-compose works fine for me, despite being advertised as "still under development".

https://github.com/containers/podman-compose

Not that it's exactly relevant to this article, but on RHEL 8, at least, Docker isn't supported, and instead they use their own container runtime called Podman along with Buildah for building them.

Podman does not run as root, and thus neither do the containers.

I tested it out on my development backup laptop; I usually use Docker-CE on my main MBP. Podman and Buildah were able to deal with all my individual containers, but their replacement for Docker-Compose failed on all my compose environments, and the errors were not helpful. I ended up installing an unsupported version of Docker-CE, and everything worked fine.

* Podman https://podman.io/

* Buildah: https://github.com/containers/buildah

* Podman-Compose: https://github.com/containers/podman-compose

> Unless you need docker-compose!

There's a solution for that :) (Note: still somewhat beta quality)

https://github.com/containers/podman-compose

There's a podman-compose project that implements the docker-compose functionality leveraging podman: https://github.com/containers/podman-compose