web-dev-qa-db-ja.com

Hyper-Vコンポーネントの1つが実行されていないため、仮想マシン「MobyLinuxVM」の起動に失敗しました

Window ServerでDockerをインストールしたときに問題が発生しました。
環境リスト:

1 Windows 10(物理マシン)
2.VMware®Workstation Player(12〜上記) URL
3.VMでのWindows Server 2016
4.Docker CE for 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

この問題の問題を解決するにはどうすればよいですか、ありがとう。

30
Willie Cheng

こんにちは、私はこの問題に対処するための答えを見つけました。うまくいけば、このコンテンツが同じ問題を抱えている人を助けることができます。
1。仮想マシン設定でVMをセットアップするには(次の図のように) enter image description here

enter image description here

  1. windows Server 2016でHyper-Vをセットアップするには(次の図のように) enter image description here

マンダリンリファレンス URL

15
Willie Cheng

これが他の誰かがこの問題を解決するのに役立つ場合、adminコマンドプロンプトからこれらのコマンドを実行すると、Hyper-Vの問題が修正されることがわかりました。

net stop vmms 
net start vmms

その後、問題なくドッカーコンテナを起動できました。

30
LConrad

ソリューションでこのエラーが発生している場合Azure Windows 10 VM Dockerをインストールした場所:

  • PowerShellコマンドレットを実行して、Windows Hyper-V機能が有効になっていることを確認します。

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

  • PowerShellコマンドレットを実行して、Windowsコンテナー機能が有効になっていることを確認します。

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

  • 昇格したコマンドプロンプトコマンドを実行して、ハイパーバイザーがブート構成データベース(BCD)で自動起動するように設定されていることを確認します。

bcdedit /set hypervisorlaunchtype Auto

上記のすべてを実行し、Azure VMを再起動すると、Dockerが正常に起動します。

上記の回答に加えて、仮想マシン設定を設定するPowerShellコマンドレットは次のとおりです。

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

まだ問題があり、まだ再起動していませんか?! -次を実行して、Windowsサービスを再起動します。

net stop vmms 
net start vmms
17
Emil
  1. PowerShellまたはCMDセッションを管理者として開きます。

  2. 次のコマンドを入力します。

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

これはネストされた仮想化の問題であり、VMWare 6.5およびWindows 10ゲストを実行してVMをオフにし、ゲストOSにハードウェア支援仮想化を公開するオプションを選択します。

enter image description here

2
BugsFindMe

Dockerの設定に移動し、other version(リンクとしてページの下部)をインストールするために選択されたGeneralセクションに移動しました。最初にstableをインストールし、beta/Edgeに変更しました。

それは問題なく機能しました。

2
Luis Cunha

これらの手順は、Windows 10 Pro v1809で機能しました。まず、Dockerエラーウィンドウを閉じます。それから

スタート> Windowsセキュリティアプリ>アプリとブラウザーの制御>エクスプロイト保護>エクスプロイト保護設定>プログラム設定> vmcompute.exe>編集>コードフローガード(CFG)>

Uncheck "Override system settings" > Apply

昇格(つまり、管理者として実行)cmdウィンドウでサービスを開始

net start vmcompute

次に、Docker Desktopを再度起動します。今回は起動するはずです

1
SushiGuy

実際には、ホストでExposeVirtualizationExtensionsを有効にしていないことが理由です。
ネストされたVMをシャットダウンします。ホストでPSコマンドを実行します。

Set-VMProcessor -VMName "NESTED VM NAME" -ExposeVirtualizationExtensions $true

そして、ネストされたVM(dockerを含む)を再び開始します。

0
Alexey Otyan