Docker

How to Fix Docker Desktop "Failed to Initialize Backend" on Windows WSL2

4 min read by DebuggedIt

Quick answer

Docker Desktop fails to start on Windows, reporting it couldn't initialize its WSL2 backend, and no containers can run until this is resolved. This error means...

Docker Desktop fails to start on Windows, reporting it couldn't initialize its WSL2 backend, and no containers can run until this is resolved. This error means the WSL2 layer Docker Desktop depends on isn't in a state Docker can work with β€” the underlying cause ranges from an outdated WSL kernel to a corrupted virtual disk to a conflicting virtualization setting.

The Problem

Docker Desktop shows an error dialog on startup instead of reaching a running state:

Docker Desktop - Unexpected WSL error
failed to initialize backend: wsl instance not running: exit status 4294967295

Checking Docker Desktop's own diagnostic logs often shows more detail underneath the surface error:

time="2026-08-07T10:15:22Z" level=error msg="wsl launch failed" error="exit status 1: WslRegisterDistribution failed with error: 0x80370102"

Why It Happens

Docker Desktop on Windows relies on WSL2 as its actual container runtime environment, and this error means something in that dependency chain is broken. Common causes:

  • Virtualization isn't enabled in the BIOS/UEFI, or a conflicting feature (particularly Hyper-V being disabled when it's actually required, or a conflict with another hypervisor like VirtualBox in certain configurations) is preventing WSL2 from starting its virtual machine layer at all.
  • An outdated WSL2 kernel that doesn't support a feature Docker Desktop's current version expects.
  • A corrupted WSL virtual disk for the Docker Desktop distribution specifically, often after an improper shutdown, a disk-full condition, or a Windows update that interrupted WSL mid-operation.
  • Windows Update pending a restart that hasn't been applied yet, leaving WSL2 in a partially-updated, inconsistent state.
  • Insufficient permissions or a Group Policy restriction on a managed corporate machine blocking WSL2's virtualization features from initializing correctly.

The Fix

First, confirm virtualization is actually enabled and WSL2 itself works independently of Docker β€” this isolates whether the problem is in WSL2 itself or specifically in Docker Desktop's integration with it:

wsl --status
Default Distribution: docker-desktop
Default Version: 2

Update WSL2 to the latest kernel version directly, which resolves a large share of these initialization failures on its own:

wsl --update
wsl --shutdown

Restart Docker Desktop after the update completes. If it still fails, check whether the WSL2 distributions Docker Desktop relies on are in a healthy state:

wsl -l -v
  NAME                   STATE           VERSION
* docker-desktop          Stopped         2
  docker-desktop-data     Stopped         2

If either shows as corrupted or fails to start manually, unregistering and letting Docker Desktop recreate it is often more reliable than trying to repair it in place:

wsl --unregister docker-desktop
wsl --unregister docker-desktop-data

Restart Docker Desktop afterward β€” it should automatically recreate both distributions fresh on next launch. If virtualization itself is the suspected issue, confirm it's enabled at the Windows feature level:

dism.exe /online /get-featureinfo /featurename:VirtualMachinePlatform
State : Enabled

If it shows as disabled, enable it and the WSL feature together, then restart Windows fully (a restart is required for this specific change to take effect):

dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

Still Not Working?

If WSL2 itself works fine for other distributions but Docker Desktop specifically still fails to initialize, try a full Docker Desktop reset from its own settings (Troubleshoot β†’ Reset to factory defaults), which clears out any corrupted internal state Docker Desktop maintains beyond just the WSL distributions themselves. If you're on a corporate-managed machine, check with your IT department for Group Policy restrictions on virtualization features β€” some managed environments explicitly disable Hyper-V or nested virtualization for security reasons, which will consistently break Docker Desktop's WSL2 backend regardless of any local configuration changes you make:

Get-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-All

If Hyper-V shows as disabled and you don't have permission to enable it yourself, that's a policy-level block requiring IT involvement rather than something fixable through Docker Desktop's own settings or a local WSL reset.