Open pedorich-n opened 4 months ago
It does have
So that suggests that the podman socket is not registered with systemd.
Maybe it needs to run after tmpfiles too?
Ideally systemd would know that the docker socket is an alias for the podman socket. I think this could be achieved with multiple ListenStream
s in podman: one for each location. That makes the tmpfiles solution seem like a hack.
Ah, I didn't realize after = [ "sockets.target" ];
is there to ensure it starts after the socket is present. This makes sense now.
Thanks for the quick fix! Like you said, race conditions are hard to test, but with your change applied after a couple of reboots, I haven't seen the issue come up again.
Hi!
I've just encountered an error where after reboot arion on NixOS was trying to start the containers before the
podman
was ready:It looks like it auto-restarted eventually.
But this makes me think: would it make sense to add something like
After = [ "podman.service" ]
(ordocker
, depending on the backend) orConditionPathExists=/var/run/docker.sock
to thesystemd
service definition to ensure it starts correctly from the first try?Edit: More info NixOS stable 23.05, nixpkgs commit
bc194f70731cc5d2b046a6c1b3b15f170f05999c