Run Docker on Ubuntu on Windows Subsystem for Linux

failed to create NAT chain: iptables failed

Try running dockerd service with --iptables=false (consider adding -D for debug).

--iptables Enable addition of iptables rules (default true)


Finally, I could run Docker on WSL in an easy way: You need first to install and run Docker Engine on Windows and then just create a symbolic link on Ubuntu bash pointing to the Windows executable:

sudo ln -s /mnt/c/Program\ Files/Docker/Docker/resources/bin/docker.exe /usr/bin/docker

This link works because from version Windows 10 Creators Update it's possible to run Windows executables from Bash. If your Windows version is previous to Windows 10 Creators Update you can try the solution explained in this blog


In my case the issue was related to the version of wsl. I changed it to version 2 and reinstalled Ubuntu-20.04 and docker and everything worked fine.

wsl --set-default-version 2

Good news! The real linux Docker daemon runs great on build 17134 thus there won't need for the Windows Docker or Hyper-V anymore. I 'm testing the build on Release Preview ring and I just compiled docker sources inside a linux container inside WSL without problem!

Just wait for the next Windows 10 feature release which will come for everyone in the next weeks!