現象
docker compose up -d 実行後、
hcsshim::CreateComputeSystem 0e820a07f6bca4539ed90cfed213aabd7a51c6d1eac21b17ffbb9167f76ce33e
The virtual machine could not be started because a required feature is not installed.
といったエラーが発生しました。
環境
- Windows 10 Pro (22H2)
- Docker Desktop v4.1.5.0
解決策
諸事情でしばらく Hyper-V を無効化していて、久々に Dokcer を起動するため直前に有効化しました。
エラーの内容でぐぐってみると Windows の機能の「Hyper-V」「コンテナー」が有効化されれていないため、という記述が多かったのですが、どれも解決には至りませんでした。
そこで一旦、Docker Desktop をアンインストール→再度インストールしようとしたのですが、
その際に発生した以下のエラーがヒントになりました。
Check that hardware-assisted virtualization (either Intel VMX or AMD SVM) and
Data Execution Prevention (sometimes labeled XD or Execute Disable or NX) are enabled in your BIOS.
Check your bootloader is configured to launch Hyper-V.
BIOSでハードウェアレベルの仮想化が有効になっている確認しろ、というメッセージからまたぐぐってみると以下のページに辿り着きました。
上記ページに記載されていた以下の手順でhypervisorlaunchtypeの値をoffからautoに変更することで、
現象が解消されました。
- Windows PowerShell を管理者権限で起動する
-
bcdeditを実行する -
Windows ブート ローダーのhypervisorlaunchtypeの値を確認する -
hypervisorlaunchtypeの値がoffであればbcdedit /set hypervisorlaunchtype autoを実行しautoに変更する - PCを再起動する