現象
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を再起動する