You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Podman supports a --systemd={true,false,always} option to podman run or podman create (docs). There is no expectation that Docker will implement this (Docker actively doesn't want to support running systemd in a container), so I'm not sure how you feel about adding this option?
Unfortunately there's a Podman bug where when it tries to run a container in systemd mode it fails on non-systemd hosts using cgroups v1. The default behaviour is --systemd=true, which really means 'detect', i.e. run in systemd mode if the container is detected to use systemd. This means that with podman v3 a workaround is required to be able to start a systemd container on such hosts (such as Alpine 3.15).
Possible workarounds:
Explicitly disable systemd mode (parity with Docker behaviour) with --systemd=false
Manually create the /sys/fs/cgroup/systemd/ mount on the host
Use latest podman, use cgroups v2, or use docker...
My preferred, normal solution is the first - fundamentally this is podman adding special handling but in a broken way, so I just want to disable that special handling... Podman is much easier to get going with on Alpine, and I'm specifically wanting to test on a cgroups v1 host.
I appreciate due to this only being requested to allow working around an issue in podman and with the option not being provided by docker it might not be a very appealing thing to add to the API. However, if not all arguments will be supported it would be nice if there was at least an escape hatch to pass arbitrary arguments through to the container client rather than getting something like "TypeError: run() got an unexpected keyword argument 'systemd'".
What do you think?
The text was updated successfully, but these errors were encountered:
I am open to support options that are present in certain implementations of Docker and not others. Though I will limit it to
Docker
Podman
Nerdctl
Feel free to make a pull request, don't forget to document in the docstring that this option is only available in podman, and do not make a runtime check to disable the option in other clients than podman. I don't think it's possible to do a reliable runtime check because users can refer to aliases in client_call, so it's actually impossible to know. Also because this option might be supported later by some clients and might be supported by clients we have no knowledge about
Podman supports a
--systemd={true,false,always}
option topodman run
orpodman create
(docs). There is no expectation that Docker will implement this (Docker actively doesn't want to support running systemd in a container), so I'm not sure how you feel about adding this option?Unfortunately there's a Podman bug where when it tries to run a container in systemd mode it fails on non-systemd hosts using cgroups v1. The default behaviour is
--systemd=true
, which really means 'detect', i.e. run in systemd mode if the container is detected to use systemd. This means that with podman v3 a workaround is required to be able to start a systemd container on such hosts (such as Alpine 3.15).Possible workarounds:
--systemd=false
/sys/fs/cgroup/systemd/
mount on the hostMy preferred, normal solution is the first - fundamentally this is podman adding special handling but in a broken way, so I just want to disable that special handling... Podman is much easier to get going with on Alpine, and I'm specifically wanting to test on a cgroups v1 host.
I appreciate due to this only being requested to allow working around an issue in podman and with the option not being provided by docker it might not be a very appealing thing to add to the API. However, if not all arguments will be supported it would be nice if there was at least an escape hatch to pass arbitrary arguments through to the container client rather than getting something like "TypeError: run() got an unexpected keyword argument 'systemd'".
What do you think?
The text was updated successfully, but these errors were encountered: