Не удалось запустить виртуальную машину MobyLinuxVM, потому что один из компонентов Hyper-V не работает
У меня возникли проблемы, когда я установил Docker с Window Server.
Список окружения:
1 Windows 10 (физическая машина)
2. Проигрыватель рабочей станции VMware® (12 ~ выше) URL
3.Windows Server 2016 на виртуальной машине
4.Docker CE для Windows (стабильный) URL
изображение проблемы и контент
![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
Как я могу исправить эту проблему, спасибо.
Ответы
Ответ 1
Привет всем, я нашел ответ для решения этой проблемы, надеюсь, этот контент может помочь кому-то, кто имеет такую же проблему.
1. настроить виртуальную машину в настройках виртуальной машины (как показано на рисунке) ![enter image description here]()
![enter image description here]()
- настроить Hyper-V в Windows Server 2016 (как показано на следующем рисунке)
![enter image description here]()
Mandarin ссылка URL
Ответ 2
В случае, если это поможет кому-то еще получить эту проблему, я обнаружил, что запуск этих команд из командной строки администратора исправил мою проблему Hyper-V:
net stop vmms
net start vmms
Затем я смог запустить контейнер для докеров без проблем.
Ответ 3
Вот решение, если вы получаете эту ошибку на виртуальной машине Azure Windows 10, где вы установили Docker:
- Убедитесь, что функции Windows Hyper-V включены с помощью командлета PowerShell:
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All -Verbose
- Убедитесь, что функция контейнеров Windows включена с помощью командлета PowerShell:
Enable-WindowsOptionalFeature -Online -FeatureName Containers -All -Verbose
- Убедитесь, что для Hypervisor установлен автоматический запуск в базе данных конфигурации загрузки (BCD), запустив в командной строке с повышенными правами команду:
bcdedit/set hypervisorlaunchtype Auto
После выполнения всего вышеперечисленного и перезапуска виртуальной машины Azure Docker должен запускаться в обычном режиме.
В дополнение к ответу выше, командлет PowerShell для установки параметра виртуальной машины:
Set-VMProcessor -VMName <Enter-VM-Name> -ExposeVirtualizationExtensions $true -Verbose
Все еще есть проблема и еще не перезагрузился?! - просто перезапустите службы Windows, выполнив следующее:
net stop vmms
net start vmms
Ответ 4
-
Откройте сеанс PowerShell или CMD с правами администратора.
-
Введите следующую команду:
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All
Ответ 5
Я пошел в настройки докеров и в разделе " General
", чтобы установить other version
(внизу страницы как ссылку). Я изначально установил stable
, измененный для beta
.
Это работало без каких-либо проблем.
Ответ 6
Это проблема вложенной виртуализации, чтобы исправить ее на работающей VMWare 6.5 и гостевой Windows 10, отключите виртуальную машину и выберите опцию "Предоставить аппаратную виртуализацию гостевой ОС".
![enter image description here]()
Ответ 7
Эти шаги помогли мне в Windows 10 Pro v1809. Сначала закройте окно ошибок Docker. Тогда
Пуск> Приложение Windows Security> Приложение & управление браузером> Защита от эксплойтов> Настройки защиты от эксплойтов> Настройки программы> vmcompute.exe> Правка> Защита потока кода (CFG)>
Uncheck "Override system settings" > Apply
В повышенном режиме (т.е. запуск от имени администратора) cmd
запускает службу с
net start vmcompute
Затем снова запустите Docker Desktop, на этот раз следует запустить
Ответ 8
На самом деле причина в том, что вы не включили ExposeVirtualizationExtensions на хосте.
Выключите вложенную ВМ. Запустите команду PS на хосте:
Set-VMProcessor -VMName "NESTED VM NAME" -ExposeVirtualizationExtensions $true
А затем снова запустите вложенную ВМ (с докером).
Ответ 9
Включение функции Hyper-V недостаточно в виртуальной машине Azure. У вас должна быть включена "Вложенная виртуализация", поэтому в соответствии с документацией вы должны выбрать виртуальную машину размера v3
:
все виртуальные машины v3 поддерживают вложенную виртуализацию
После изменения размера виртуальная машина будет перезапущена, и DockerVM в Hyper-V запустится.