When running a process under systemd, only some env variables are passed into the process, such as $HOME, $SHELL, $USER - that's the default systemd behavior.
Docker-desktop now, is, according to documentation, only passing the ssh-agent to containers if the SSH_AUTH_SOCK is available. Because of the filtered environment, this doesn't work when running via systemd (ie. via systemctl --user start docker-desktop).
Please change the docker-desktop service unit to allow this env variable to be passed to docker-desktop.
Example:
[Service]
PassEnvironment=SSH_AUTH_SOCK
Thank you!
Reproduce
run docker desktop via systemctl --user start docker-desktop
run a container with the following volume mounted: -v /run/host-services/ssh-auth.sock:/run/host-services/ssh-auth.sock
socket wont be available inside the container.
Expected behavior
Socket of ssh-agent running on host should've been passed to the container.
Description
When running a process under systemd, only some env variables are passed into the process, such as
$HOME
,$SHELL
,$USER
- that's the default systemd behavior.Docker-desktop now, is, according to documentation, only passing the ssh-agent to containers if the
SSH_AUTH_SOCK
is available. Because of the filtered environment, this doesn't work when running via systemd (ie. viasystemctl --user start docker-desktop
).Please change the docker-desktop service unit to allow this env variable to be passed to docker-desktop. Example:
Thank you!
Reproduce
systemctl --user start docker-desktop
-v /run/host-services/ssh-auth.sock:/run/host-services/ssh-auth.sock
Expected behavior
Socket of ssh-agent running on host should've been passed to the container.
docker version
docker info
Diagnostics ID
CE8AFCC7-C832-486B-B16B-D2D5A224E204/20240607150826
Additional Info
No response