Hey everyone,
I’m currently facing an issue with accessing Docker containers running in WSL2 from my Windows host.
I have installed docker inside the wsl linux via apt-get. Docker version 25.0.4, build 1a576c5
Here’s the setup:
I have a Docker container hosting an SFTP server in my WSL2 Ubuntu instance. Here’s the command I’m using to run it:
docker run \ -v ~/sftp/upload:/home/foo/upload \ -p 2222:22 -d atmoz/sftp \ foo:pass:1001
When I’m within my WSL2 Ubuntu environment, I can connect to the SFTP server using:
sftp -P 2222 foo@127.0.0.1
However, when I attempt to connect from the Windows host via PowerShell, I encounter the following error:
ssh: connect to host 127.0.0.1 port 2222: Connection timed out
Interestingly, I don’t face this issue when accessing non-Docker services running in WSL2 from the Windows host. So when I host some apache webserver in my WSL ubuntu I can reach it from windows browser via 127.0.0.1:80.
What configurations do I need to adjust to enable accessing Docker containers from the Windows host? Any help would be greatly appreciated!