Using docker-compose with Podman rootless
12 points by Exagone313
12 points by Exagone313
There are a few simplifications that can be made to the first step:
systemctl --user --machine=USERNAME@.host [...], and it will target that user's systemd session using the same underlying mechanism as machinectl.On my system (Arch Linux), the Podman socket (systemd's socket activation) is not started by default.
Good suggestion for the other user part.
EDIT: It doesn't seem to work when part of the wheel group, unlike machinectl. Probably requires root.
Oh, interesting, I've just used podman-compose for all my composing needs so far.
The article doesn't say, and I'm curious. Was there a reason you chose to use docker-compose instead of podman-compose, since you're already using podman?
Last time I checked, podman-compose missed a lot of features and was easy to break. It probably evolved since then, but I kept using docker-compose since that time.
Adding a link to it nonetheless.
Makes sense! It looked good to me, but I liked quadlets so much that I really drifted away from either -compose for how I was using podman.
I moved my deployments to Podman Quadlet too. Wanted to make an article for this at first but it is a too large chunk to write.
I still use docker-compose at work (for development purposes), when I get a Linux machine. It's easier to show that I'm using the same tool as everyone (while underlying it's not really Docker).
Thanks for the guide. I use docker-compose extensively for my own services. In the context of docker-compose, are there any features you give up or quirks you run into by swapping out docker for podman, or does everything behave exactly the same?
(I know a lot of folks prefer quadlets for multiple containers on podman, but I don't want to give up the simplicity of deploying a whole set of services anywhere I want with just two commands: git clone followed by docker compose up -d.)
Officially speaking docker-compose does not support Podman, and you "should" use podman-compose. However, I have been running the setup described here for years and it works fine. You will find, however, that certain edge cases may not be documented; I can't recall off the top of my head, but I've bumped into a few.