Can not get docker desktop (win) to start

Hi,
I just wanted to install docker desktop (4.24.1) for windows on my new machine at home (no vm) but everytime I try to start docker desktop it shows me this:

docker

After some investigation and diagnosis I found that there are no docker-desktop and docker-desktop-data wsl distributions at all.

Here is what I’ve tried so far:

  • update wsl to latest version
  • enabling/disabling wsl windows feature
  • restart pc several times
  • uninstall docker desktop (also removed all remaining folders and registry entries)
  • updated windows to latest version
  • tried installing an older version of docker hub (4.20)
  • install docker desktop with admin rights
  • install docker desktop with the entire firewall turned off

I’m on the only account at this machine. I’m using Windows 10 Home (v10.0.19045 Build). Virtualization is enabled.

Here is what the log shows when I run the docker diagnosis tool:

[PASS] DD0027: is there available disk space on the host?
[SKIP] DD0028: is there available VM disk space?
[SKIP] DD0002: does the bootloader have virtualization enabled?
[SKIP] DD0018: does the host support virtualization?
[PASS] DD0001: is the application running?
[SKIP] DD0022: is the Virtual Machine Platform Windows Feature enabled?
[SKIP] DD0021: is the WSL 2 Windows Feature enabled?
[PASS] DD0024: is WSL installed?
[FAIL] DD0025: are WSL distros installed? WSL Distribution docker-desktop is missing
[PASS] DD0026: is the WSL LxssManager service running?
[FAIL] DD0029: is the WSL 2 Linux filesystem corrupt? prereq failed: are WSL distros installed?
[FAIL] DD0035: is the VM time synchronized? prereq failed: are WSL distros installed?
[FAIL] DD0017: can a VM be started? prereq failed: are WSL distros installed?
[FAIL] DD0016: is the LinuxKit VM running? prereq failed: can a VM be started?
[FAIL] DD0011: are the LinuxKit services running? prereq failed: is the LinuxKit VM running?
[FAIL] DD0004: is the Docker engine running? prereq failed: are the LinuxKit services running?
[PASS] DD0015: are the binary symlinks installed?
[FAIL] DD0031: does the Docker API work? prereq failed: is the Docker engine running?
[PASS] DD0013: is the $PATH ok?
[FAIL] DD0003: is the Docker CLI working? prereq failed: is the Docker engine running?
[FAIL] DD0005: is the user in the docker-users group? prereq failed: is the LinuxKit VM running?
[FAIL] DD0038: is the connection to Docker working? prereq failed: is the Docker engine running?
[FAIL] DD0014: are the backend processes running? prereq failed: is the LinuxKit VM running?
[FAIL] DD0007: is the backend responding? prereq failed: are the backend processes running?
[PASS] DD0008: is the native API responding?
[FAIL] DD0009: is the vpnkit API responding? prereq failed: are the backend processes running?
[FAIL] DD0010: is the Docker API proxy responding? prereq failed: are the backend processes running?
[SKIP] DD0006: is the Docker Desktop Service responding?
[FAIL] DD0030: is the image access management authorized? prereq failed: is the Docker engine running?
[PASS] DD0033: does the host have Internet access?
[PASS] DD0002: does the bootloader have virtualization enabled?
[PASS] DD0018: does the host support virtualization?
[PASS] DD0001: is the application running?
[PASS] DD0022: is the Virtual Machine Platform Windows Feature enabled?
[PASS] DD0021: is the WSL 2 Windows Feature enabled?
[PASS] DD0024: is WSL installed?
[WARN] DD0025: are WSL distros installed? WSL Distribution docker-desktop is missing
[PASS] DD0026: is the WSL LxssManager service running?
[WARN] DD0029: is the WSL 2 Linux filesystem corrupt? prereq failed: are WSL distros installed?
[WARN] DD0035: is the VM time synchronized? prereq failed: are WSL distros installed?
[WARN] DD0017: can a VM be started? prereq failed: are WSL distros installed?
[WARN] DD0016: is the LinuxKit VM running? prereq failed: can a VM be started?
[WARN] DD0011: are the LinuxKit services running? prereq failed: is the LinuxKit VM running?
[WARN] DD0004: is the Docker engine running? prereq failed: are the LinuxKit services running?
[PASS] DD0015: are the binary symlinks installed?
[WARN] DD0031: does the Docker API work? prereq failed: is the Docker engine running?
[WARN] DD0032: do Docker networks overlap with host IPs? prereq failed: does the Docker API work?

Please note the following 11 warnings:

1 : The check: are WSL distros installed?
    Produced the following warning: WSL Distribution docker-desktop is missing

The Docker engine uses several WSL distributions. Therefore these must be installed.

2 : The check: are WSL distros installed?
    Produced the following warning: WSL Distribution docker-desktop is missing

The Docker engine uses several WSL distributions. Therefore these must be installed.

3 : The check: is the WSL 2 Linux filesystem corrupt?
    Produced the following warning: prereq failed: are WSL distros installed?

If the WSL 2 Linux filesystem is corrupt then Docker Desktop cannot start.
There is a known issue fixed in Windows Insider builds which can cause filesystem corruption, see:
https://github.com/microsoft/WSL/issues/5895 .

Try running "wsl --shutdown" to stop your WSL Virtual Machine. When it restarts it will
run a filesystem check and hopefully fix the problem.


4 : The check: are WSL distros installed?
    Produced the following warning: WSL Distribution docker-desktop is missing

The Docker engine uses several WSL distributions. Therefore these must be installed.

5 : The check: is the VM time synchronized?
    Produced the following warning: prereq failed: are WSL distros installed?

The VM time must be in sync with the host, otherwise Docker Desktop will not work correctly.

Ensure you are using a modern WSL 2 kernel (see "wsl --update"). If this problem persists,
try manually synchronizing the VM clock with "sudo hwclock -s".

6 : The check: can a VM be started?
    Produced the following warning: prereq failed: are WSL distros installed?

The Docker engine runs inside a Linux VM. Therefore we must be able to start Virtual Machines.

7 : The check: is the LinuxKit VM running?
    Produced the following warning: prereq failed: can a VM be started?

The Docker engine runs inside a Linux VM. Therefore the VM must be running.

8 : The check: are the LinuxKit services running?
    Produced the following warning: prereq failed: is the LinuxKit VM running?

The Docker engine runs inside a Linux VM as a service. Therefore the services must have started.

9 : The check: is the Docker engine running?
    Produced the following warning: prereq failed: are the LinuxKit services running?

The Docker engine manages all containers and images on the host. Check the dockerd.log to see why it failed to start.

10 : The check: does the Docker API work?
    Produced the following warning: prereq failed: is the Docker engine running?

If the Docker API is not available from the host then Docker Desktop will not work correctly.

11 : The check: do Docker networks overlap with host IPs?
    Produced the following warning: prereq failed: does the Docker API work?

If the subnet used by a Docker network overlaps with an IP used by the host, then containers
won't be able to contact the overlapping IP addresses.

Try configuring the IP address range used by networks: in your docker-compose.yml.
See https://docs.docker.com/compose/compose-file/compose-file-v2/#ipv4_address-ipv6_address


Please investigate the following 1 issue:

1 : The test: are WSL distros installed?
    Failed with: WSL Distribution docker-desktop is missing

The Docker engine uses several WSL distributions. Therefore these must be installed.

Here is what I get when I use: wsl -l --all

Windows Subsystem for Linux has no installed distributions.

Use 'wsl.exe --list --online' to list available distributions
and 'wsl.exe --install <Distro>' to install.

Distributions can also be installed by visiting the Microsoft Store:
https://aka.ms/wslstore
Error code: Wsl/WSL_E_DEFAULT_DISTRO_NOT_FOUND

Installing and running the ubuntu distribution works (but I’ve removed it). As you can see there is no docker-desktop distrubiton getting installed.

I’m stuck. Does anyone here have another idea on what I could try to get it up and running?

Thanks in advance!

I’m having this same issue. Please tag me if you get a response. If I figure anything out, I’ll let you know

Up - No distros are getting installed during setup, no docker-desktop

I fixed it, in my case the issue was cause because a VPN application was changing the computer DNS, when Docker Desktop try to estabilish the connection the RPC server was unavailable due to the DNS being changed. I disabled the app, rerun the setup and now the distros are there and everything works fine.

1 Like

That resolved the issue for me, thank you