RUNLOCALAIv38
->Will it run?Best GPUCompareTroubleshootStartLearnPulseModelsHardwareToolsBench
Run check
RUNLOCALAI

Independently operated catalog for local-AI hardware and software. Hand-written verdicts. Source-cited claims. Reproducible commands when we have them.

OP·Eruo Fredoline
DIR
  • Models
  • Hardware
  • Tools
  • Benchmarks
TOOLS
  • Will it run?
  • Compare hardware
  • Cost vs cloud
  • Choose my GPU
  • Prompting kits
  • Quick answers
REF
  • All buyer guides
  • Learn local AI
  • Methodology
  • Glossary
  • Errors KB
  • Trust
EDITOR
  • About
  • Author
  • How we make money
  • Editorial policy
  • Contact
LEGAL
  • Privacy
  • Terms
  • Sitemap
MAIL · MONTHLY DIGEST
Get monthly local AI changes
Monthly recap. No spam.
DISCLOSURE

Some links on this site are affiliate links (Amazon Associates and other first-class retailers). When you buy through them, we earn a small commission at no extra cost to you. Affiliate links do not influence our verdicts — there are cards we rate highly that we don't have affiliate relationships with, and cards that sell well that we refuse to recommend. Read more →

© 2026 runlocalai.coIndependently operated
RUNLOCALAI · v38
  1. >
  2. Home
  3. /Learn
  4. /Courses
  5. /Local AI on Windows
  6. /Ch. 5
Local AI on Windows

05. Docker Desktop for Windows

Chapter 5 of 15 · 20 min
KEY INSIGHT

Docker Desktop on Windows runs as a WSL2 distribution named "docker-desktop". Its resource limits are independent of `.wslconfig`—you must tune both if you want predictable resource allocation across all Linux tooling.

Docker Desktop on Windows runs inside the WSL2 backend by default. This means docker commands run inside WSL2, not in a Windows CMD window. Install Docker Desktop from docker.com/products/docker-desktop/. During installation, enable the "Use WSL2 instead of Hyper-V" option. If you are on Windows Home (which lacks Hyper-V), this is your only option anyway.

After installation, open PowerShell and verify:

docker --version
docker compose version

Inside WSL2, also verify:

docker --version
# Docker version 26.1.0, build 4c95490

Both should show the same version. If they diverge, the Windows-side Docker Desktop is running a different daemon than the WSL2-side CLI expects. Restart Docker Desktop from the system tray icon.

Docker Desktop's VM settings in its graphical preferences control how much CPU, RAM, and disk it allocates to the Linux VM that actually runs containers. These are separate from WSL2's .wslconfig settings. If you set WSL2 to memory=12GB and Docker Desktop to 8GB, Docker containers see only 8 GB.

Check Docker's resource limits from inside WSL2:

docker system info | grep -E "(Memory|Total Space)"
# Memory Limit: 8589934592
# Total Space: 527483473920

Common failure: Docker Desktop fails to start with "WSL2 installation is incomplete". Run wsl --update from an elevated PowerShell prompt. Another common failure: "Hardware assisted virtualization and data execution protection must be enabled in BIOS". This requires a BIOS setting change and cannot be worked around in software.

Local verification checkpoint

Run the smallest example from this chapter in a local workspace and record the package version, runtime, data path, and observed output. If the result depends on model size, vector count, CPU/GPU backend, or available memory, note that constraint beside the exercise so the lesson remains reproducible.

EXERCISE

Run docker run --rm hello-world inside WSL2. If it succeeds, run docker run --rm -it ubuntu bash and confirm cat /etc/os-release shows Ubuntu inside the container. Exit the container.

← Chapter 4
NVIDIA CUDA Setup with WSL2
Chapter 6 →
Running AI Containers in Docker