Live data from Hacker News

Podman: A Daemonless Container Engine

podman.io

1–10 of 250 posts

Re: Podman: A Daemonless Container Engine

#3
Glad to see Podman here, worked with it at a past job where services were deployed on RedHat. Converting all existing deployment scripts to podman was as easy as do a recursive search and replace `s/docker/podman/` and there was no learning curve as all the commands were the same. By default root is not required which is great also.

Re: Podman: A Daemonless Container Engine

#4
post #2

Anyone have experience with this? I love the idea of it being daemonless.

If you run it as non-root it is significantly slower than docker as root. Docker can us the overlay2 kernel driver, whereas podkan would use fuse-overlayfs in userspace. This has a high CPU overhead (e.g. don't try to run AFL inside podman), and a 1024 FD limit for the entire container (so a 'make -j40' usually dies).

There are ways around it: raise the ulimit for your user and run new enough podman to raise limit for fuse-overlayfs, use the 'vfs' driver (it has other perf issues). I heard (but haven't tested yet) that the 'btrfs' driver avoids all these problems and works from userspace. Obviously requires an FS formatted as btrfs...

There are also compatibility issues with Docker. E.g. one container was running sshfs inside Docker just fine, but fails with a permission error on /dev/fuse with podman.

Re: Podman: A Daemonless Container Engine

#8
post #2

Anyone have experience with this? I love the idea of it being daemonless.

I've used podman-compose for a few web projects. Rootless means you can't bind to privileged ports etc. but after a bit of fiddling I can now spin up my choice of DB/server/mock pretty quickly - just like I could with docker.

The lack of 'cannot connect to dockerd' mysteries makes for a much-improved developer experience if you ask me.

Re: Podman: A Daemonless Container Engine

#9
post #2

Anyone have experience with this? I love the idea of it being daemonless.

I have a Makefile for a Rust project which binds the local repository to a Docker volume, builds it in the container using muslrust, and then does a chown to change the target directory back from root ownership to my own user.

All I had to do was 's/docker/podman/g' and remove the chown hack and it works fine: https://github.com/sevagh/pq/commit/6acf6d05a094ac2959567a9a...

It understands Dockerfiles and can pull images from Dockerhub.

Re: Podman: A Daemonless Container Engine

#10
post #7

I still miss an easy way to setup multiple containers in a single network like with docker-compose. podman-compose is not really useable.

An Ansible playbook with the podman_container module is my go-to. It's not as easy because it's less magic but it's also less magic which I count as a win.
Post reply on HN