Installing Docker Desktop on Windows with the WSL 2 Backend
Install Docker Desktop on Windows using the WSL 2 backend — requirements, installer flags, per-user vs all-users, and first-run verification.
Published on • October 18, 2026
AI Assistant

On Windows, Docker Desktop runs your Linux containers inside a lightweight utility VM that lives in a WSL 2 distribution. Getting the install right the first time means checking three things — Windows edition, WSL version, and virtualization — before you touch the installer. The Windows install guide is the source for every command and flag below.
System requirements for the WSL 2 backend
The WSL 2 backend is the default and works without administrator privileges. It needs:
- WSL 2.1.5 or later. If you plan to enable Enhanced Container Isolation, you need WSL 2.6+ (it bundles Linux kernel 6.6, and ECI requires at least 6.3.0).
- Windows 10 64-bit: Enterprise, Pro, or Education version 22H2 (build 19045). Windows 11 64-bit: Enterprise, Pro, or Education version 23H2 (build 22631) or higher. Home and Education editions can run Linux containers only — Windows containers need Professional or Enterprise.
- The Windows Server service (
LanmanServer) enabled, start mode Automatic. - Hardware: 64-bit CPU with SLAT, 8 GB RAM, and hardware virtualization enabled in BIOS/UEFI.
Docker Desktop isn’t supported on Windows Server 2019/2022 — Microsoft’s Windows container docs cover that path instead.
Install or update WSL first
Open PowerShell as administrator and check what you have:
wsl --version
If no version details appear, you’re on the inbox Store stub of WSL, which can’t host Docker’s VM. Fix it:
wsl --install
wsl --update
A restart is often required. If Microsoft Store access is blocked by policy, download the .msi from the WSL GitHub releases page and run it manually.
Get the installer
Three download targets exist in the docs:
- x86_64:
https://desktop.docker.com/win/main/amd64/Docker%20Desktop%20Installer.exe - x86_64 via the Microsoft Store
- Arm64 (Early Access):
https://desktop.docker.com/win/main/arm64/Docker%20Desktop%20Installer.exe
Checksums are published in the release notes.
Choose an installation mode
The installer offers two modes, and you can’t switch later without an uninstall/reinstall:
| Per-user (default, recommended) | All users | |
|---|---|---|
| Location | %LOCALAPPDATA%\Programs\DockerDesktop | C:\Program Files\Docker\Docker |
| Registry | HKCU | HKLM |
| Admin rights to install/update | Not required | Required |
| Backends | WSL 2 or Docker VMM | WSL 2, Hyper-V, Docker VMM |
| Windows containers | No | Yes |
Per-user is the right default for the WSL 2 backend: smaller attack surface, no privileged system service, no elevation. All-users mode exists mainly for Hyper-V and Windows containers.
Install interactively
Double-click Docker Desktop Installer.exe. On the Configuration page, make sure Use WSL 2 instead of Hyper-V is selected (on single-backend systems the installer picks automatically), then finish the wizard. The install does not auto-start the application.
Install from the command line
For an unattended per-user install:
Start-Process 'Docker Desktop Installer.exe' -Wait -ArgumentList 'install', '--user'
All-users (run as administrator):
Start-Process 'Docker Desktop Installer.exe' -Wait install
In Command Prompt the equivalent is start /w "" "Docker Desktop Installer.exe" install --user. Useful flags on the install command:
--backend=wsl-2— pin the backend explicitly (hyper-v,windows, ordocker-vmmare the alternatives; WSL 2 is the default).--accept-license— accept the Docker Subscription Service Agreement at install time instead of on first run.--quiet,--installation-dir=<path>,--always-run-service(needed if your users lack admin rights and you rely oncom.docker.service).
For all-users installs where the admin account differs from the daily account, add the user to the docker-users group:
net localgroup docker-users <user> /add
The docs attach a warning worth repeating: membership in docker-users grants access to the Docker daemon socket — administrative-equivalent power on the host. It’s required for Windows containers and Hyper-V management, and not required for Linux containers over WSL 2.
First start
Search for Docker Desktop and launch it. The whale menu shows the Docker Subscription Service Agreement; Docker Desktop won’t run until you accept. The short version: free for personal use, education, open source, and businesses under 250 employees with under $10M revenue; paid subscriptions otherwise.
Verify the WSL 2 backend is actually in use
docker version
docker run --rm hello-world
wsl -l -v
wsl -l -v should list a docker-desktop distribution with WSL 2 as its version. In Settings → General you can confirm the backend and switch between WSL 2 and Docker VMM (Hyper-V appears only in all-users installs). You can also use docker context ls to confirm the CLI is talking to the Desktop context.
Common first-run failures:
- Virtualization disabled in BIOS/UEFI — the VM won’t start; enable VT-x/AMD-V and check Task Manager → Performance → CPU → “Virtualization: Enabled”.
- Old inbox WSL —
wsl --versionreturning nothing meanswsl --update(as admin). - WSL 2 feature never enabled —
wsl --installhandles this as a one-time, per-machine operation requiring elevation.
Once docker run hello-world prints its banner from PowerShell, you’re done — the engine, the VM, and the CLI are wired together. Next stop is the get-started tutorial or pointing Docker Desktop at a Compose project.