Peter H
Peter H

Reputation: 109

Nesting Hyper-V with a VM (i.e. Docker Windows Desktop within a VM)?

On a physical server with Windows Server 2019 Enterprise, I created Hyper V multiple VMs, both Servers and Win 10 Pro client.

I installed Docker Desktop (for Windows) on one of the Win 10 Pro VM clients.

The client virtual machine name is the Hyper-V Manager. I get an error when I try to start DockerDesktopVM, and the state remains off; any Docker command crashes Docker.

My questions:

Upvotes: 4

Views: 5663

Answers (3)

VonC
VonC

Reputation: 1328522

It should work even on AMD, according to MicrosoftDocs/Virtualization-Documentation issue 1276:

"Run Hyper-V in a Virtual Machine with Nested Virtualization"

Prerequisites

...
AMD EPYC/Ryzen processor or later

  • The Hyper-V host must be Windows Server 2022/Windows 11 or greater
  • VM configuration version 10.0 or greater

And:

What's new in Windows Server 2022

Nested virtualization is a feature that allows you to run Hyper-V inside of a Hyper-V virtual machine (VM).

Windows Server 2022 brings support for nested virtualization using AMD processors, giving more choices of hardware for your environments.
More information can be found at the nested virtualization documentation.

Upvotes: 0

kaminzo
kaminzo

Reputation: 336

According to Docker FAQ

Docker Desktop is not supported in nested virtualization scenarios. It might work in some cases and not in others.

https://docs.docker.com/desktop/faqs/general/#can-i-run-docker-desktop-in-nested-virtualization-scenarios

Upvotes: 0

Peter H
Peter H

Reputation: 109

https://www.altaro.com/hyper-v/enable-nested-virtualization/

Q: How Do I Enable Nested Virtualization for Hyper-V Virtual Machines A: Pass $true for Set-VMProcessor’s “ExposeVirtualizationExtensions” parameter

Set-VMProcessor <VMName> -ExposeVirtualizationExtensions $true

Upvotes: 2

Related Questions