👏

Failed to load docker configuration: エラーが発生した場合(WSL2)

2022/02/06に公開

概要

WSL2環境でDockerを操作していると、以下のようなエラーが発生する場合があります。

Failed to load docker configuration: open /home/[ユーザ名]/.docker/features.json: input/output error
WSL2(Ubuntu)
docker-compose -v
WSL2(Ubuntu)
docker -v

等をするだけでも、features.jsonが開けないと怒られてエラーになります。

対策

ファイルを何らかのプロセスがつかんでしまったような場合に発生するようです。
調べると対応方法がいくつか出てくるようですが、WindowsPCを再起動すると直ります。

私は再起動で直りましたが、それでも直らない場合は、
Windows側で、~/.dockerフォルダをいったんリネームすると直るようです。

powershell
mv ~/.docker ~/.docker_old

ただ、.dockerフォルダにはdocker設定関連のファイルが入っていそうですので、基本的な使い方であれば問題なさそうですが、
場合によって設定が一部ロストしそうなので、少し怖いですね。

ちなみに、WSLをいったんシャットダウンして、再起動するというものもありましたが、こちらは、Ubuntu-20.04だけでなく、docker-desktop、docker-desktop-dataも停止してしまい、再度ディストリビューションを起動しようとしてもうまくいきませんでした。

powershell
wsl --shutdown
wsl

まずは、Windowsの再起動ですね。頻発する場合はもう少し考えてみます。

Discussion