The specified service does not exist as an installed service

Docker Desktop: 'Service does not exist' on Windows — WSL2 reset fix

Docker Desktop fails to start on Windows when WSL2 gets out of sync. Here's why it happens and the exact reset steps to get back running.

You click the Docker Desktop icon, the whale spins for a second, and then a red box pops up: The specified service does not exist as an installed service. This usually happens right after a Windows update, a WSL2 kernel update, or when you've switched between WSL1 and WSL2 distros. I've seen it on Windows 10 21H2 and Windows 11 22H2, often after a reboot that wasn't clean.

The root cause is simple: Docker Desktop depends on WSL2 to run the Linux engine. When WSL2's internal services get tangled—say the WSL service or the LxssManager service didn't start properly, or the distro registration is corrupt—Windows can't find the service Docker is asking for. It's not a Docker bug, it's a WSL2 state problem.

The good news? You don't need to reinstall Docker or Windows. The fix is resetting WSL2, and it's a ten-minute job. Here's what I do every time this shows up.

The Reset: Step by Step

Before we start, back up any Docker volumes or data you care about. This reset will shut down all WSL2 distros, but it won't delete them. Still, better safe.

  1. Close Docker Desktop completely. Right-click the whale in the system tray and select Quit. If it's frozen, kill it in Task Manager.
  2. Open PowerShell as Administrator. Hit Start, type "PowerShell", right-click and choose "Run as administrator".
  3. Shut down WSL2 by running:
wsl --shutdown

This stops the WSL2 lightweight VM. Wait about 30 seconds—give the VM time to fully tear down.

  1. Check the WSL status. Run:
wsl --status

If it says "Default Version: 2" and lists a distro, you're good. If it throws an error like "The service has not been started", skip to step 6.

  1. Restart the WSL service (this is often the actual fix). In the same PowerShell window, run:
net stop LxssManager
net start LxssManager

You might see "The service name is invalid" here—that's the exact error Docker is hitting. If so, the service registration is broken, and that's where the reset gets serious.

  1. Unregister and re-register WSL2. This resets the WSL2 kernel and service registration without touching your distros. Run:
wsl --update
wsl --shutdown

The --update flag forces a reinstall of the WSL2 kernel from Microsoft's servers. If you're offline, it'll fail, so make sure you have internet.

  1. Set WSL2 as the default version (in case a Windows update reverted it):
wsl --set-default-version 2
  1. Restart Docker Desktop. Start it from the Start menu. Give it a minute—the first start after a WSL2 reset takes longer because it rebuilds the engine.

That's it for the usual case. After step 8, Docker should boot and your containers should show up like nothing happened.

If It Still Fails

Sometimes the reset isn't enough. Here's what I check next, in this order:

  • Check the Windows services. Press Win + R, type services.msc, and find "LxssManager" and "WSL Service". Both should be Running. If not, right-click and Start them manually.
  • Verify WSL2 is actually installed. Run wsl --list --verbose. If it says "No installed distributions", you might have a distro that's unregistered. You can re-register it with wsl --install -d Ubuntu, but only if you don't have critical data in that distro.
  • Disable Hyper-V and re-enable it. Open "Windows Features" (search for it), uncheck "Windows Hypervisor Platform" and "Virtual Machine Platform", reboot, then re-enable both. This fixes deeper virtualization conflicts that WSL2 sometimes trips over after a Windows update.
  • Check Docker's settings. In Docker Desktop, go to Settings → Resources → WSL Integration. Make sure the "Enable integration with my default WSL distro" is on and that your distro is listed. If it's not, toggle the checkbox and Apply.

Honestly, 9 times out of 10, the wsl --update plus wsl --shutdown combo does the trick. The error message is scary, but it's just Windows saying "I can't find the WSL service"—and once you reset WSL2, the service is back where Docker expects it.

One last note: if you're on Windows Server, skip this fix entirely. That error on Server usually means the WSL feature isn't installed at all—you'd need to enable it via PowerShell with Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux first.

Try the reset, and let me know if it gets you back up. It's saved me more than a few lunch breaks.

Related Errors in Programming & Dev Tools
0XC0000027 STATUS_UNWIND (0XC0000027) - The One Fix That Works 0XC0000092 Fixing EXCEPTION 0XC0000092 floating-point stack error Could not find a version that satisfies the requirement Pip install fails: 'Could not find a version that satisfies the requirement' 0X0000024E Fix ERROR_DEBUG_ATTACH_FAILED (0X0000024E) Fast

Was this solution helpful?

EP
Erropedia Team
Tech Support Editors
The Erropedia editorial team researches and documents real-world tech errors from across Windows, Linux, macOS, networking, databases, cloud platforms, and more. Every solution is reviewed for accuracy and updated as software and systems evolve.