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
Run /mnt/c/Windows/System32/cmd.exe and it works fine.
Run a custom some-program.exe that lives in Ubuntu's filesystem (maybe in /home/username) and it works fine.
Start a Docker container with /run/WSL, /init, /mnt/wsl, /mnt/wslg, and /mnt/c bind-mounted into the container, and the WSL2_GUI_APPS_ENABLEDWSL_INTEROP, and PULSE_SERVER enviroment variables passed through to the container.
Run /mnt/c/Windows/System32/cmd.exe inside of the container and it works fine.
Run a custom some-other-program.exe that lives only in the Docker container and it fails with ./some-other-program.exe: Invalid argument.
Look up the path to some-other-program.exe in the host's /var/lib/docker/overlay2 and run it from there, and it works fine.
Expected Behavior
some-other-program.exe should be launchable from inside of Docker.
Actual Behavior
some-other-program.exe fails to launch from inside of Docker, possibly because of Docker container bind-mount path translation.
Please view the issues below to see if they solve your problem, and if the issue describes your problem please consider closing this one and thumbs upping the other issue to help us prioritize it!
This is an interesting edge case. Since docker runs in a chroot, the path that the windows service receives is relative to that root, and therefore trying to create that process from Windows fails since that path doesn't exist in the distribution filesystem:
Windows Version
Microsoft Windows [Version 10.0.22631.3737]
WSL Version
2.3.17.0
Are you using WSL 1 or WSL 2?
Kernel Version
5.15.153.1-2
Distro Version
Ubuntu 22.04
Other Software
Docker (Ubuntu 22), version 24.0.7
Repro Steps
/mnt/c/Windows/System32/cmd.exe
and it works fine.some-program.exe
that lives in Ubuntu's filesystem (maybe in /home/username) and it works fine./run/WSL
,/init
,/mnt/wsl
,/mnt/wslg
, and/mnt/c
bind-mounted into the container, and theWSL2_GUI_APPS_ENABLED
WSL_INTEROP
, andPULSE_SERVER
enviroment variables passed through to the container./mnt/c/Windows/System32/cmd.exe
inside of the container and it works fine.some-other-program.exe
that lives only in the Docker container and it fails with./some-other-program.exe: Invalid argument
.some-other-program.exe
in the host's/var/lib/docker/overlay2
and run it from there, and it works fine.Expected Behavior
some-other-program.exe
should be launchable from inside of Docker.Actual Behavior
some-other-program.exe
fails to launch from inside of Docker, possibly because of Docker container bind-mount path translation.Diagnostic Logs
WslLogs-2024-08-28_23-33-06.zip
The text was updated successfully, but these errors were encountered: