Docker Desktop has always leaned on someone else's virtualization tech — Apple's framework on Mac, WSL2 or Hyper-V on Windows. As of Docker Desktop v4.86, that changes: Docker shipped its own first-party hypervisor, called Docker VMM, now in public beta on Mac and Windows, with GA targeted for end of October 2026. This post explains what a VMM even is, why Docker built one, and exactly how to try it — for beginners and pros alike.
Download the latest version of Docker Desktop here choose the operating system according to what machine and where you want to install it
🧠 Core Concept: What's a VMM, and Why Does It Matter?
Docker Desktop doesn't run containers directly on macOS or Windows — neither OS ships a native Linux kernel. So Docker spins up a lightweight Linux VM in the background, and your containers actually run inside that. The Virtual Machine Manager (VMM) is the software layer that creates and manages this VM — the engine room nobody sees, until it's slow.
Before Docker VMM, that middle layer was third-party: Apple Virtualization Framework or legacy HyperKit/QEMU on Mac, WSL2 or Hyper-V on Windows. Docker VMM replaces it with Docker's own hypervisor, purpose-built for container workloads instead of general-purpose VMs.
🔍 Check what you're running right now
Skip the Settings UI — confirm your current engine straight from the terminal:
# Confirm Docker Desktop is running and see the active context
docker desktop status
Docker Desktop is running
# See kernel + OS details of the Linux VM your containers run inside
docker info --format 'OS: {{.OperatingSystem}} | Kernel: {{.KernelVersion}}'
OS: Docker Desktop | Kernel: 6.10.14-linuxkit
Reference: docs.docker.com/reference/cli/docker/desktop/status · docs.docker.com/reference/cli/docker/system/info
🎯 Try this now: open Docker Desktop → Settings → General → Virtual Machine Manager → select Docker VMM → Apply & restart. Then re-run
docker desktop statusto confirm it's live.
Remember to restart your machine if you do no see this option
⚙️ What Actually Changed
| Improvement | Purpose | Reference | |
|---|---|---|---|
| 🟢⚡ | Faster startup | Container start times drop across first launch, restarts, and switches | VMM beta blog |
| 🟢🧠 | Idle memory reclaim | Returns RAM to host when containers aren't active | VMM docs |
| 🔵📂 | Faster file I/O | Cuts latency in the edit-compile-test loop | VMM beta blog |
| 🔵🪟 | No more WSL2 dependency (Windows) | Real VM boundary, Hyper-V-level isolation at WSL2-level speed | VMM beta blog |
| 🟣🛡️ | First-party governance | Docker can monitor/control the hypervisor it owns | VMM docs |
🚀 Switching to Docker VMM
🟢 Beginner 🔵 Intermediate 🟣 Advanced | 🍎 Mac 🪟 Windows
| Step | Purpose | Reference | |
|---|---|---|---|
| 🟢🍎🪟 | Allocate ≥4GB RAM | Docker VMM requires this minimum for the Linux VM | VMM docs |
| 🟢🍎🪟 | Settings → General → Virtual Machine Manager | Locate the VMM selector in Docker Desktop | VMM docs |
| 🟢🍎🪟 | Select "Docker VMM" | Opts into the new first-party hypervisor | VMM docs |
| 🟢🍎🪟 | Apply & restart | Applies the change and restarts the Linux VM | VMM docs |
| 🔵🍎🪟 | Re-add bind mount shares if prompted | Docker VMM doesn't auto-share folders like older backends | VMM docs |
🛠️ Verify & Diagnose from the CLI
Once switched, confirm the engine actually restarted cleanly and pull logs if anything looks off — no need to leave the terminal.
# Restart Docker Desktop after a manual engine change
docker desktop restart
Restarting Docker Desktop...
Docker Desktop is running
Reference: docker desktop restart
# Confirm the installed Docker Desktop version supports VMM (needs 4.86+)
docker desktop version
Docker Desktop 4.87.0 (198327)
Reference: docker desktop version
# Something feels off? Pull a full diagnostic bundle
docker desktop diagnose
Running diagnostics...
Diagnostics ID: 01ABCD23-4567-89EF-GHIJ-KLMNOPQRSTUV
Uploaded, ID above — share with Docker support if filing an issue
Reference: docker desktop diagnose
# Tail live Desktop logs while reproducing an issue
docker desktop logs -f
Reference: docker desktop logs
⚠️ Known Beta Limitations
| Limitation | Details | |
|---|---|---|
| 🟣🍎 | No Rosetta support (Mac) | Emulating amd64 images is slow; stick with Apple Virt. Framework for x86 workloads |
| 🟣🍎 | virtiofs + certain databases | MongoDB and Cassandra may fail under Docker VMM's virtiofs; fix expected in a future release |
| 🔵🍎🪟 | Restart sometimes required | Switching engines may need a manual docker desktop restart
|
✅ Key Takeaways
- A VMM is the hidden layer that creates the Linux VM your containers actually run in — Docker now owns that layer instead of borrowing it.
- Docker VMM is opt-in beta today (v4.86+), becoming the default at GA, targeted for end of October 2026.
- Expect faster container startup, better file I/O, and smarter idle memory handling — especially noticeable in edit-compile-test loops.
- Mac users on Intel emulation (Rosetta) and certain databases under virtiofs should hold off until known issues are resolved.
- Switching back to your old backend is one settings toggle away — this is safe to try today.
💬 What Should I Cover Next?
Vote in the comments: Docker VMM vs WSL2 benchmarks · Migrating a MongoDB dev setup off virtiofs · Docker Desktop resource tuning · Docker Model Runner · Docker Sandboxes for AI agents. Tell me which and it's next.
Tags: docker devops virtualization beginners DeveloperProductivity
Hashtags: #Docker #DevOps #CloudNative #DockerDesktop #PlatformEngineering #BuildInPublic #100DaysOfCode
Mentions: @Docker @dev_community @DockerCon
📚 References
- Docker — Announcing: Docker VMM Public Beta
- Docker — Virtual Machine Manager docs
- Hacker News — Discussion: Docker Sandboxes & the new Docker VMM architecture
- Collabnix — Difference between VM vs Docker
✍️ About the Author
Padhmeni Priya R R — Bioinformatics Master's grad working as a research scientist on cutting-edge variant analysis tools, endlessly curious about technology and AI-driven innovation.
🔗 linkedin.com/in/padhmeni
Drop a 🐳 if this saved you a search, and tell me what to cover next.



Top comments (0)