title: Problem with Docker on Windows Server 2019: not running Linux containers
body: <p>I was trying to install Docker on a fresh Windows Server 2019 using <a href="https://blog.foldersecurityviewer.com/how-to-install-docker-and-run-docker-containers-on-windows-server-2019/" rel="nofollow noreferrer">this guide</a> (other guides seem to use the same procedure).</p>
  <p><strong>NB</strong>: I was given a Windows Server 2019 with Hyper-V installed, but <em>with no virtual machine</em>.</p>
  <p>My installation commands were:</p>
  <pre><code>Enable-WindowsOptionalFeature –Online -FeatureName Microsoft-Hyper-V –All -NoRestart
  Install-WindowsFeature RSAT-Hyper-V-Tools -IncludeAllSubFeature
  Install-Module -Name DockerMsftProvider -Repository PSGallery -Force
  Install-Package -Name docker -ProviderName DockerMsftProvider
  Restart-Computer –Force
  </code></pre>
  <p>And then:</p>
  <pre><code>Get-VM WinContainerHost | Set-VMProcessor -ExposeVirtualizationExtensions $true
  </code></pre>
  <p>Which returns an error:</p>
  <pre><code>Get-VM : Hyper-V was unable to find a virtual machine with name &quot;WinContainerHost&quot;.
  At line:1 char:1
  + Get-VM WinContainerHost | Set-VMProcessor -ExposeVirtualizationExtens ...
  + ~~~~~~~~~~~~~~~~~~~~~~~
      + CategoryInfo          : InvalidArgument: (WinContainerHost:String) [Get-VM], VirtualizationException
      + FullyQualifiedErrorId : InvalidParameter,Microsoft.HyperV.PowerShell.Commands.GetVM
  </code></pre>
  <p>Now, my first question is: what is <code>WinContainerHost</code>? Who did create it? I cannot see it in my Hyper-V Management Console.</p>
  <p>Nevertheless, I try to go on with the Docker installation process:</p>
  <pre><code>Install-Module DockerProvider
  Install-Package Docker -ProviderName DockerProvider -RequiredVersion preview
  [Environment]::SetEnvironmentVariable(“LCOW_SUPPORTED”, “1”, “Machine”)
  Restart-Service docker
  </code></pre>
  <p>After the process, typing <code>docker --version</code>, I get:</p>
  <pre><code>Docker version 17.10.0-ee-preview-3, build 1649af8
  </code></pre>
  <p>It seems that Docker is installed. I then try to launch a container with:</p>
  <pre><code>docker pull nginx:latest
  </code></pre>
  <p>which results in:</p>
  <pre><code>latest: Pulling from library/nginx
  33847f680f63: Extracting [==================================================&gt;]  27.15MB/27.15MB
  dbb907d5159d: Download complete
  8a268f30c42a: Download complete
  b10cf527a02d: Download complete
  c90b090c213b: Download complete
  1f41b2f2bf94: Download complete
  failed to register layer: failed to start service utility VM (applydiff 8f46920b86bdcdab20b89a73c657f59c52f0271fd2fa27bf87bb875c55c11f7a): 
  container 8f46920b86bdcdab20b89a73c657f59c52f0271fd2fa27bf87bb875c55c11f7a_svm encountered an error during CreateContainer: failure in a 
  Windows system call: The virtual machine could not be started because a required feature is not installed. (0xc0370102) extra info: {&quot;SystemType&quot;
  :&quot;container&quot;,&quot;Name&quot;:&quot;8f46920b86bdcdab20b89a73c657f59c52f0271fd2fa27bf87bb875c55c11f7a_svm&quot;,&quot;Layers&quot;:null,&quot;HvPartition&quot;:true,&quot;HvRuntime&quot;:{&quot;ImagePath&quot;
  :&quot;C:\\Program Files\\Linux Containers&quot;,&quot;LinuxInitrdFile&quot;:&quot;initrd.img&quot;,&quot;LinuxKernelFile&quot;:&quot;bootx64.efi&quot;},&quot;ContainerType&quot;:&quot;linux&quot;,
  &quot;TerminateOnLastHandleClosed&quot;:true}
  </code></pre>
  <p>My intuition tells me that the problem is with the <code>Get-VM WinContainerHost | Set-VMProcessor -ExposeVirtualizationExtensions $true</code>, but I cannot find a way to solve it.</p>
  <p>Could someone please give me more insight on this? Thanks in advance.</p>