minor issue: it’s podman-compose instead of podman compose. The hyphen feels like a step back because we moved from docker-compose to docker compose. But thT’s not a real issue.
podman does not autostart containers after boot. You have to manually start them, or write a start script. Or create a systemd unit for each of them.
I'm also currently migrating all of my self-hosted services from docker to podman. Look into using Quadlet and systemd rather than podman-compose: https://www.redhat.com/sysadmin/quadlet-podman
Your Quadlet .container
files will end up looking very similar to your docker compose files. Podman will automatically generate a systemd service unit for you if you drop the .container
file in your user systemd unit directory ($HOME/.config/containers/systemd/) and run systemctl --user daemon-reload
. Then starting the container on boot is as simple as systemctl --user enable --now containername.service
.
This will not solve your rootful vs. rootless issues, as others have pointed out, but Quadlet/systemd is nice replacement for the service/container management layer instead of docker-compose/podman-compose
This was really interesting. Thanks for sharing