I have somewhat of a niche issue, where I have no network connectivity while connecting to my work VPN inside of WSL v2. I have found others complaining about this issue on Github. Though no one seems to know how to fix it and I have not had the time to properly investigate.
Because of this, I’m required to continue using WSL v1. Though, with WSL v1, Docker does not work. I receive this nice message:
$ docker
The command 'docker' could not be found in this WSL 1 distro.
We recommend to convert this distro to WSL 2 and activate
the WSL integration in Docker Desktop settings.
See https://docs.docker.com/docker-for-windows/wsl/ for details.
So I’m in somewhat of a catch-22 here…
To work around this problem until a proper solution is found, I was able to get Docker working with WSL v1.
If you happen to be having a similar issue (and it seems like quite a few people are, considering the number of Github posts I found), just follow these steps:
- Expose the Docker daemon in docker desktop settings:
Install the stand-alone Docker client in WSL v1:
$ wget https://download.docker.com/linux/static/stable/x86_64/docker-20.10.5.tgz
$ tar zxvf docker-20.10.5.tgz
$ cd docker
Set the default Docker daemon in WSL v1:
export DOCKER_HOST=tcp://localhost:2375
Verify you can connect to Docker running on Windows from within WSL:
./docker info
This is also beneficial in that you only have one Docker host to manage your containers, network, etc., rather than two.