2
votes

I created Windows Server 2019 VM in VMWare and I am trying to run there docker container (Ubuntu) but I get this error

docker.exe: Error response from daemon: failed to start service utility VM (createreadwrite)

What I already did:

  1. I installed Hyper-V and also I enabled Containers in Windows features.
  2. Enable Nested Virtualization if you’re running Docker Containers using Linux Virtual Machine running on Hyper-V Get-VM WinContainerHost | Set-VMProcessor -ExposeVirtualizationExtensions $true (machine exists, it's a Linux VM)
  3. Enable LinuxKit system [Environment]::SetEnvironmentVariable("LCOW_SUPPORTED", "1", "Machine")
  4. Restart Docker

Output from docker version

Client: Docker Engine - Enterprise
 Version:           19.03.5
 API version:       1.40
 Go version:        go1.12.12
 Git commit:        2ee0c57608
 Built:             11/13/2019 08:00:16
 OS/Arch:           windows/amd64
 Experimental:      false

I already followed those threads (Linux Docker EE Containers on Windows Server 2016,Cannot start Hyper-V container) but it doesn't solved my problem.

2

2 Answers

1
votes

I found the main issue. VMWare Workstation does not support nested virtualization for AMD Ryzen. When I installed Docker on my Win10 everything is OK.

1
votes

VMWare Workstation does not support nested virtualization for AMD Ryzen

Actually.... Billy Smolen (github.com/wbsmolen) from Microsoft mentions in MicrosoftDocs/Virtualization-Documentation issue 1276:

So great news -- win10 build 19640 (in insider's fast ring) has hyper-v support for nested virtualization on amd systems.
You must create a hyper-v v9.3 vm. Does not work on kvm hosts.

I got a win10 nested vm to work on a hyper-v host running a 3900x with out-of-box hyper-v settings.
Host is already torn down tho in favor of kvm. waiting on kvm to support this.