Docker for Windowsを使っていたときのこと、PCを再起動したタイミングで docker ps
などでDockerコマンドを打つと、下記のようなエラーを吐くようになってコンテナを起動することができなくなってしまった。
# エラー全文は載せていないですが、あしからず docker : error during connect: ・ ・ ・ open //./pipe/docker_engine: The system cannot find the file specified.
なお、このコマンドが出ても docker -v
などのコマンドは正常に機能する。
日本語で検索すると、下記のようなdocker-machine
の再作成で解決した方もいるようだが、そもそも docker-machine
というコマンド自体が打てない。
docker-machine rm default docker-machine create default --driver virtualbox
下記のドキュメントを見ると docker machine
も一緒に入っているようだが、参照はできないのか。それともそもそも入っていないのか...
Docker Machine のインストール — Docker-docs-ja 19.03 ドキュメント
Docker for WIndowsで"open //./pipe/docker_engine: The system cannot find the file specified. " みたいなエラーが出たときの解決方法
前置きが長くなってしまったが、Docker for Windowsで上記問題を解決するために、コマンドプロンプトで下記のコマンドを打った。
このコマンドを打つと、自身の環境で5分ほど反応がなくなったが、その後Dockerが正常に起動したようで docker ps
と打った場合、正常に反応するようになった。
もちろんコンテナの起動も問題ない。
cd "C:\Program Files\Docker\Docker" ./DockerCli.exe -SwitchDaemon
なお、下記のページを参照している。
これらのコマンドの仕組みやエラーの原因などまでは深堀りしていない。
深堀りと言えば、最近の fukabori.fm
でコンテナランタイムについて話していた。
Dockerを普段から触ってはいるが技術の細部まで理解できていない自分のような人間でも、とても楽しく聞けた。
おすすめ。