はじめに
新しいWindows11のノートPCを購入し、Docker Desktop をインストールしたらエラーに遭遇。
四苦八苦しながら解決して改めて検証したら、私の再インストールの方法に問題があったと思うお話だったので残します。
deploying WSL2 distributions
ensuring main distro is deployed: deploying "docker-desktop": importing WSL distro "必要な機能がインストールされていないため、操作を開始できませんでした。 \r\nエラー コード: Wsl/Service/RegisterDistro/CreateVm/HCS/HCS_E_SERVICE_NOT_AVAILABLE\r\n" output="docker-desktop": exit code: 4294967295: running WSL command wsl.exe C:\Windows\System32\wsl.exe --import docker-desktop <HOME>\AppData\Local\Docker\wsl\main C:\Program Files\Docker\Docker\resources\wsl\wsl-bootstrap.tar --version 2: 必要な機能がインストールされていないため、操作を開始できませんでした。
エラー コード: Wsl/Service/RegisterDistro/CreateVm/HCS/HCS_E_SERVICE_NOT_AVAILABLE
: exit status 0xffffffff
checking if isocache exists: CreateFile \\wsl$\docker-desktop-data\isocache\: The network name cannot be found.
バージョン
Windows 11
Docker Desktop 4.37.1
当時ハマったこと
Dockerのメッセージには、DockerとWSLを再インストールしてみてください。と。
メッセージに従って、再インストールしても解消されず。
なんでだー!ってハマる。
原因(推測)
再インストール時にやたら時間がかかっていたので、何度か強制停止、再起動を繰り返していたため。
当時の解決方法
ポイント
再インストール時に Virtual Machine Platform を"単独"でインストール。
※ Linux 用 Windows サブシステム と"一緒ではなく"。
詳細
1.Docker Desktop をアンインストール
2.Virtual Machine Platform, Linux用 Windows サブシステム をアンインストール
チェックボックスを外して、PC再起動
3.wsl のステータスを確認
PS C:\Users\XXXXX> wsl --status
既定のバージョン: 2
WSL1 は、現在のマシン構成ではサポートされていません。
WSL1 を使用するには、"Linux 用 Windows サブシステム" オプション コンポーネントを有効にしてください。
WSL2 は、現在のマシン構成ではサポートされていません。
"仮想マシン プラットフォーム" オプション コンポーネントを有効にし、さらに、BIOS で仮想化を有効にしてください。
"仮想マシン プラットフォーム" を有効にするには、次のコマンドを実行します: wsl.exe --install --no-distribution
詳細については、https://aka.ms/enablevirtualization をご覧ください
PS C:\Users\XXXXX>
4.Virtual Machine Platform = 仮想マシン プラットフォーム のみ にチェックを入れ、PC再起動
※ 当時、Virtual Machine Platform, Linux用 Windows サブシステム を"一緒"にインストールしても、"WSL2 は、現在のマシン構成ではサポートされていません。" が表示される。
5.wslのステータスを確認
意図したとおり、WSL2のエラーは消えている。
PS C:\Users\XXXXX> wsl --status
既定のバージョン: 2
WSL1 は、現在のマシン構成ではサポートされていません。
WSL1 を使用するには、"Linux 用 Windows サブシステム" オプション コンポーネントを有効にしてください。
PS C:\Users\XXXXX>
6.Docker Desktop をインストールし、PC再起動
改めて検証
・Virtual Machine Platform, Linux用 Windows サブシステム を"一緒"にインストールしても、問題なし
・Docker Desktopのインストールだけでも大丈夫(Docker Desktopインストール時にVirtual Machine Platform, Linux用 Windows サブシステムもインストールされた)
ふりかえり
最初に書いた通り、当時、Virtual Machine Platform, Linux用 Windows サブシステム を"一緒"にインストールして、時間がかかっていたので待ちきれず途中でPCを落としたり。Docker Desktopをインストール時に待ちきれず途中でPCを落としたり。
そのせいで、Virtual Machine Platform, Linux用 Windows サブシステム のインストールが中途半端になっていたと推測します。(でも、チェックボックスはONになっていた。)
万が一、同じエラーに遭遇された方がいたら、ダメ元で一つずつチェックを入れて再インストールしてみるのはありかもしれません