Docker Desktop WSL Update Fails on Windows 10/11
Docker Desktop's WSL update fails mostly due to a hung WSL service or a corrupted distro. Quick fix: restart LxssManager and reset WSL.
1. WSL Service Hung – The Usual Culprit
Nine times out of ten, when Docker Desktop fails during the WSL update, it's because the LxssManager service is stuck. This is the Windows service that manages WSL instances. When it hangs, Docker can't update the WSL kernel or distro, and the installer just sits there or throws a generic error.
How to fix it
- Open Services.msc as administrator (Win+R, type
services.msc, hit Enter). - Find LxssManager in the list. Right-click it and choose Restart. If it's already running, right-click and select Stop, then Start again.
- Then open PowerShell or Command Prompt as admin and run:
wsl --shutdown - Wait 10 seconds, then run:
wsl --update - Now relaunch Docker Desktop. It should pick up the WSL update and finish.
This works because restarting LxssManager clears any lock on the WSL files, and wsl --shutdown forces all WSL 2 VMs to stop cleanly. I've seen this fix work on Windows 10 22H2 and Windows 11 23H2 every time.
2. Corrupted WSL Distro – Second Most Common
If the service restart didn't help, the problem is likely a corrupted WSL 2 distro. This happens after a bad Windows update, a sudden power loss, or if you manually deleted WSL files without going through the proper uninstall. Docker's update tries to write to the vhdx file, but it's corrupted and rejects the write.
How to fix it
- Run PowerShell as admin.
- Check your distros:
wsl -l -v - You'll see something like
docker-desktopordocker-desktop-data. Unregister the broken ones:wsl --unregister docker-desktopwsl --unregister docker-desktop-data - Now restart Docker Desktop. It will recreate both distros fresh. This can take a minute or two.
Don't worry, your containers and images are stored in the distro files, so this nukes them. If you need to keep images, export them first with docker save. But honestly, for most people, rebuilding is faster than debugging a corrupt vhdx.
3. Hyper-V / Virtualization Disabled – Rare but Critical
Sometimes the WSL update fails because Hyper-V or hardware virtualization is turned off. This is rare on modern machines – most have it on by default. But if you've messed with BIOS settings or recently disabled Hyper-V to troubleshoot something else, Docker's WSL update will fail silently.
How to fix it
- Check if virtualization is on. Open Task Manager (Ctrl+Shift+Esc), go to the Performance tab, select CPU. Look for Virtualization: Enabled at the bottom right.
- If it says Disabled, reboot into BIOS/UEFI (usually F2, Del, or Esc during startup). Look for Intel VT-x, AMD-V, or SVM Mode and enable it. Save and exit.
- In Windows, make sure Hyper-V is enabled:
dism /online /enable-feature /featurename:Microsoft-Hyper-V-All /all /quiet /norestart - Reboot and try the WSL update again.
I've only seen this on a few Lenovo ThinkPads and older Dell Optiplexes where the BIOS had virtualization turned off by default. If you're on a home-built PC, check your BIOS first.
Quick-Reference Table
| Problem | Fix | Time Estimate |
|---|---|---|
| LxssManager service hung | Restart LxssManager, then wsl --shutdown | 2 minutes |
| Corrupted WSL distro | Unregister docker-desktop and docker-desktop-data, restart Docker | 5 minutes |
| Virtualization disabled | Enable in BIOS and Hyper-V in Windows | 10 minutes |
Start with fix #1. It's the most common and takes almost no time. If that fails, move to #2. Only bother with #3 if you know you've messed with virtualization settings. And don't waste time reinstalling Docker Desktop – that rarely fixes the WSL update issue. The problem is always under the hood in WSL itself.
Was this solution helpful?