LoginSignup
1
1

More than 1 year has passed since last update.

Error response from daemon: open \\.\pipe\docker_engine_linux: The system cannot find the file specified.

Last updated at Posted at 2023-02-27

Dockerが起動しなくて困った

$ docker ps
Error response from daemon: open \\.\pipe\docker_engine_linux: The system cannot find the file specified.

事象 : Docker Desktopが「Docker is starting...」のままで起動しない

  • 環境
    • Windows 10 Pro バージョン22H2
    • Docker version 20.10.22, build 3a2c30b
    • Docker Desktop 4.16.3 (96739)
    • WSL 2 Ubuntu
image.png

「Docker Desktopの再起動」「PCの再起動」をしても状況が変わらない・・・Errorダイアログの内容もよくわからない・・・

Errorダイアログの内容
Docker.Core.HttpBadResponseException:
{"message":"1 error occurred:\n\t* starting WSL integration service: synchronising agents: starting added distros: 1 error occurred:\n\t* waiting for WSL integration for Ubuntu: timed out while polling for WSL distro integration to become ready in \"Ubuntu\"\n\n\n\n"}

   場所 Docker.Core.GoBackend.GoBackendClient.<PostNoBodyWithError>d__19.MoveNext() 場所 C:\workspaces\4.16.x\src\github.com\docker\pinata\win\src\Docker.Core\GoBackend\GoBackendClient.cs:行 226
--- 直前に例外がスローされた場所からのスタック トレースの終わり ---
   場所 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   場所 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   場所 Docker.Engines.WSL2.LinuxWSL2Engine.<DoStartAsync>d__11.MoveNext() 場所 C:\workspaces\4.16.x\src\github.com\docker\pinata\win\src\Docker.Engines\WSL2\LinuxWSL2Engine.cs:行 54
--- 直前に例外がスローされた場所からのスタック トレースの終わり ---
   場所 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   場所 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   場所 Docker.ApiServices.StateMachines.TaskExtensions.<WrapAsyncInCancellationException>d__0.MoveNext() 場所 C:\workspaces\4.16.x\src\github.com\docker\pinata\win\src\Docker.ApiServices\StateMachines\TaskExtensions.cs:行 29
--- 直前に例外がスローされた場所からのスタック トレースの終わり ---
   場所 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   場所 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   場所 Docker.ApiServices.StateMachines.StartTransition.<DoRunAsync>d__6.MoveNext() 場所 C:\workspaces\4.16.x\src\github.com\docker\pinata\win\src\Docker.ApiServices\StateMachines\StartTransition.cs:行 91
--- 直前に例外がスローされた場所からのスタック トレースの終わり ---
   場所 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   場所 Docker.ApiServices.StateMachines.StartTransition.<DoRunAsync>d__6.MoveNext() 場所 C:\workspaces\4.16.x\src\github.com\docker\pinata\win\src\Docker.ApiServices\StateMachines\StartTransition.cs:行 118
--- 直前に例外がスローされた場所からのスタック トレースの終わり ---
   場所 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   場所 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   場所 Docker.ApiServices.StateMachines.EngineStateMachine.<StartAsync>d__15.MoveNext() 場所 C:\workspaces\4.16.x\src\github.com\docker\pinata\win\src\Docker.ApiServices\StateMachines\EngineStateMachine.cs:行 72
--- 直前に例外がスローされた場所からのスタック トレースの終わり ---
   場所 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   場所 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   場所 Docker.Engines.Engines.<StartAsync>d__23.MoveNext() 場所 C:\workspaces\4.16.x\src\github.com\docker\pinata\win\src\Docker.Engines\Engines.cs:行 109

原因 : 不明

WSL 2でなんかうまくいっていないらしいが・・・能力の不足でいまいち理解できない・・・。
Docker Desktop Will Not Start · Issue #13184 · docker/for-win

対応1 : WSL 2を止めてDocker Desktopを再起動する

  1. wsl --shutdownで仮想マシンを終了
    1. 注意 : コンテナはきれいさっぱり消える
  2. Docker Desktopを再起動する
    1. ここで起動するようになった
  3. docker-compose up -d --no-recreate --buildでコンテナを再作成する
    • 「ERROR: docker endpoint for "default" not found」になった場合の対応
# WSL 2を止める
$ wsl --shutdown

# コンテナはきれいさっぱり消える
$ docker ps -a
CONTAINER ID   IMAGE     COMMAND   CREATED   STATUS    PORTS     NAMES

# 地道にコンテナを作り直す
$ docker-compose up -d --no-recreate --build
Creating network "docker_default" with the default driver
...省略...

対応2 : Doccker Desktopをアップデートする

今日もDockerが起動しなくて困る。

  1. wsl --shutdownで仮想マシンを終了
    • コンテナは削除されなかった(消えることもあるので注意)
  2. Docker Desktopを再起動する
    • この時点ではまだError response from daemon: open \\.\pipe\docker_engine_linux: The system cannot find the file specified.になる
  3. Doccker Desktopの[Software updates]にアップデートが来ていたので「Docker Desktop 4.17.0」へアップデートする
  4. 正常に起動する
1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1