起きたこと
2026年5月18日にPCを起動するとDocker Desktopが「starting the docker engine...」の表示が続き起動しなくなりました。

結局なんだったのか
WSLがバージョンアップし、Pre-release版(2.7.5)に切り替わっていました。よって以下の対策が最も有効でした
- WSLのバージョンダウン
- DockerDesktopからRancherDesktopに切り替え
- Windows 11 Insider Previewを退会
勉強になったこと
このトラブルを解決するにあたり勉強になったことを勉強になったことから順に紹介します。
1.WSLはGithubで公開されている
WSLはインストール用のコマンドが用意されており、exeやmsiファイルを解凍したり、storeからインストールすることはありません(Windowsの機能の有効化または無効化の捜査は必要)。
[リリースコマンド例]
なので、てっきりパッケージはないと思っていたら、ちゃんとGithubで公開されていました。
[github]
Githubで公開されているmsiパッケージを使ってダウングレードができます
ちなみに、StoreにもWSLがありますが、いったい何なのかよくわかりませんでした汗
[Store]
2.DockerDesktopのログはAppData\Local\Docker\logにある
DockerDesktopのログはAppData\Local\Docker\logにあります。
monitor.logに基本的なログが出ています。
3.GeminiやChatGPTのログ解析は便利
上記のmonitor.logは「starting the docker engine」が表示されている間も更新されて続け、膨大な量になっていました。しかし、ログファイルをそのまま生成AIにアップして「解析をお願いしてください」だけでそれなりの原因がヒットしました。ただ、対策方法は再起動を促すのみで原因解決には至りませんでした。

ちなみに、上記画像ではファイルシステムiso9660がUbuntuに用意されていないことを指摘していますが、WSLをダウングレードしても用意されていませんでした。
4.wsl --shutdownはWSLの全端末を停止。wsl --terminateは1台停止
wslの再起動ではwsl --shutdownが良く提案されますが、すべての端末(ディストリビューション)を停止するコマンドです。1台だけ停止したいときはwsl --teminateで十分です。下図の場合、Ubuntuとrancher-desktopの2つが停止します。

5.Windows Containerというのがある
最近のDockerDesktopでは「Switch to Linux Container」というオプションが付いていました。どうやら、Windowsのプロセスにそのままコンテナを起動できる「Windows Container」という手法と、従来のようにWSL上で起動する「Linux Container」という手法があるようです。
ただし、Windows ContainerはファイルシステムがWindowsになるので、imageファイルもWindows用を選択する必要がありますが、数は少ない王です。
感想
いろいろ調べるうちに、
- WSLのファイルシステムが対応していない
- DockerDesktopがcli-toolsをインストールするためにisoイメージをマウントしている
- RancherDesktopがeth0をタップしようとするが、既に存在するので失敗する
など、DockerDesktop/RancherDesktopが何をしているのか垣間見えたので面白かったです。
とはいえ、丸2日間作業ができなかったので影響は大きく、復旧までに時間がかかりました。私の端末はもともとWindows10であり、そのころはWSL2を使うためにWindows Insider PreviewをONにしなければ使えなかったです。その名残でずっと有効化していましたが、ここにきて爆発するとは思いませんでした。Insider Previewを無効化しても次の安定板が公開されるまでは引き続き有効なままらしいので不安な日々が続きます。
