Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Failed to start the virtual machine 'MobyLinuxVM' because one of the Hyper-V components is not running

I have got some problem when I installed Docker with Window Server.
The environment list:

1 Windows 10 (Physical Machine)
2.VMware® Workstation Player (12~ above) URL
3.Windows Server 2016 at the VM
4.Docker CE for Windows(stable) URL

the problem picture and content
enter image description here

Unable to start: The running command stopped because the preference variable "ErrorActionPreference" or common parameter is set to Stop: 'MobyLinuxVM' failed to start.  Failed to start the virtual machine 'MobyLinuxVM' because one of the Hyper-V components is not running.  'MobyLinuxVM' failed to start. (Virtual machine ID BBD755F7-05B6-4933-B1E0-F8ACA3D2467B)       The Virtual Machine Management Service failed to start the virtual machine 'MobyLinuxVM' because one of the Hyper-V components is not running (Virtual machine ID BBD755F7-05B6-4933-B1E0-F8ACA3D2467B). at Start-MobyLinuxVM, <No file>: line 315 at <ScriptBlock>, <No file>: line 410    at Docker.Backend.ContainerEngine.Linux.DoStart(Settings settings, String daemonOptions) in C:\gopath\src\github.com\docker\pinata\win\src\Docker.Backend\ContainerEngine\Linux.cs:line 256    at Docker.Backend.ContainerEngine.Linux.Start(Settings settings, String daemonOptions) in C:\gopath\src\github.com\docker\pinata\win\src\Docker.Backend\ContainerEngine\Linux.cs:line 130    at Docker.Core.Pipe.NamedPipeServer.<>c__DisplayClass9_0.<Register>b__0(Object[] parameters) in C:\gopath\src\github.com\docker\pinata\win\src\Docker.Core\pipe\NamedPipeServer.cs:line 47    at Docker.Core.Pipe.NamedPipeServer.RunAction(String action, Object[] parameters) in C:\gopath\src\github.com\docker\pinata\win\src\Docker.Core\pipe\NamedPipeServer.cs:line 145 

How can I fix this problem issue,Thanks.

like image 676
Willie Cheng Avatar asked Jan 15 '18 01:01

Willie Cheng


People also ask

How do you fix Hyper-V Cannot be installed a Hypervisor is already running?

Causes for Hyper-V cannot be installed a hypervisor is already running. This error occurs when we try to install Hyper-V in a server which is already a virtual machine. Thus, the workaround is to install all the components for Hyper-V from Powershell.

How do I enable Hyper-V in Windows Docker?

Enable the Hyper-V role through SettingsRight click on the Windows button and select 'Apps and Features'. Select Programs and Features on the right under related settings. Select Turn Windows Features on or off. Select Hyper-V and click OK.

Could not be started because Hypervisor is not running Hyper-V?

If all the prerequisites are complete and the Hyper-V virtual machines won't start, try reinstalling the Hyper-V role. Go to Hyper-V > Hyper-V Platform section and disable Hyper-V Hypervisor and Hyper-V Services features. Restart your computer and then re-enable these features.


2 Answers

Here is a solution if you are getting this error on an Azure Windows 10 VM where you have installed Docker and this is already Nested Virtualization capable VM in other words your Azure VM must be V3 sized as minimum (DV3 or EV3):

  • Ensure Windows Hyper-V featutes are enabled by running PowerShell cmdlet:

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All -Verbose

  • Ensure Windows Containers feature is enabled by running PowerShell cmdlet:

Enable-WindowsOptionalFeature -Online -FeatureName Containers -All -Verbose

  • Ensure Hypervisor is set to auto start in the Boot Configuration Database (BCD) by running in elevated command prompt the command:

bcdedit /set hypervisorlaunchtype Auto

After running all of the above and you restart the Azure VM, Docker should be starting normally.

In addition to the Answer above the PowerShell cmdlet to set the Virtual Machine Setting is:

Set-VMProcessor -VMName <Enter-VM-Name> -ExposeVirtualizationExtensions $true -Verbose

Still have an issue and haven't rebooted yet?! - just restart the windows services by running the following:

net stop vmms  net start vmms 
like image 102
Emil Avatar answered Sep 19 '22 17:09

Emil


In case this helps anyone else getting this issue, I found that running these commands from an admin command prompt fixed my Hyper-V issue:

net stop vmms  net start vmms 

I then was able to start my docker container without issue.

like image 32
LConrad Avatar answered Sep 18 '22 17:09

LConrad