Skip to content

Docker Desktop runs background containers and my disk sits at 100 percent IO even when I'm not building.

Docker Desktop has a few default sources of constant IO: bind mounts to Windows paths, image pruning disabled, and a VHDX that never shrinks. All tunable.

Try this first

  1. 1Open Docker Desktop, Settings, Resources, Advanced. Give Docker a sensible memory and disk cap. Not every CPU core, that doesn't help the host.
  2. 2Move heavy-IO projects off Windows paths into the WSL2 filesystem itself (\\wsl$\Ubuntu\home\...). Bind mounts via /mnt/c are 5 to 10 times slower.
  3. 3Run 'docker system df' to see what's eating space, then 'docker system prune -a --volumes' (warning: removes unused images and volumes) to clean up.
  4. 4For the growing docker-desktop-data VHDX: stop Docker, run 'wsl --shutdown' in PowerShell, then 'Optimize-VHD' or 'diskpart compact' to shrink the file. Only effective after a prune.
  5. 5Disable auto-updates and background checks if you don't need them: Settings, Software updates and General, 'Start Docker Desktop when you log in'. Testers and non-devs often run it idle for nothing.
  6. 6Monitor with Resource Monitor (resmon.exe), Disk tab, to see which process eats your IO. Usually it's the Docker virtual disk, confirming pruning was the right move.

When to bring us in

If IO stays high after pruning and VHDX shrink, a specific container is writing in a loop. Ask the developer for container logs and run 'docker stats' to isolate the offender.

See also

None of the above fits?

Describe your situation below. We pass your input plus the steps you already saw to our AI and return tailored next-step advice. If it's too risky to DIY, we'll say so.

Who are you?

For the AI question we need your email and company, so we can follow up if the AI gets stuck, and to prevent abuse.

Limited to 2 questions per hour and 5 per day, kept lean so the AI stays useful. For more, contacting us directly works better for you and us.

Or skip the DIY entirely

Our Managed IT clients do not look these things up. One point of contact, a fixed monthly price, resolved within working hours.