はじめに
プロジェクトのDocker化に勤しんでいたところ、タイトルにあるようなDockerのエラーに見舞われました。とりあえずエラーは解消したので、記録として綴らせていただきます。参考になれば幸いです。
- 環境
- macOS Monterey
- 使用ツール
- 背景
-
docker-compose up --build
に失敗して以降、多くのdockerコマンド・docker-composeコマンドにおいて以下のエラーが起きるようになった。
-
docker-compose up --build
の失敗ログ↓
cannot write /var/folders/xp/_yz9z1m14tl_qc135pm3z99h0000gn/T/tmpy6voazh1 because server did not provide an image ID
ERROR: Service '{service名}' failed to build : Build failed
docker-composeコマンドのエラー↓
➜ git:(feature/docker_main/#381) ✗ docker-compose down
Traceback (most recent call last):
File "docker/api/client.py", line 268, in _raise_for_status
File "requests/models.py", line 941, in raise_for_status
requests.exceptions.HTTPError: 500 Server Error: Internal Server Error for url: http+docker://localhost/version
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "docker/api/client.py", line 214, in _retrieve_server_version
File "docker/api/daemon.py", line 181, in version
File "docker/api/client.py", line 274, in _result
File "docker/api/client.py", line 270, in _raise_for_status
File "docker/errors.py", line 31, in create_api_error_from_http_exception
docker.errors.APIError: 500 Server Error for http+docker://localhost/version: Internal Server Error ("b'dial unix docker.raw.sock: connect: connection refused'")
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "docker-compose", line 3, in <module>
File "compose/cli/main.py", line 81, in main
File "compose/cli/main.py", line 200, in perform_command
File "compose/cli/command.py", line 60, in project_from_options
File "compose/cli/command.py", line 152, in get_project
File "compose/cli/docker_client.py", line 41, in get_client
File "compose/cli/docker_client.py", line 170, in docker_client
File "docker/api/client.py", line 197, in __init__
File "docker/api/client.py", line 221, in _retrieve_server_version
docker.errors.DockerException: Error while fetching server API version: 500 Server Error for http+docker://localhost/version: Internal Server Error ("b'dial unix docker.raw.sock: connect: connection refused'")
[8699] Failed to execute script docker-compose
↑docker-compose down
もできなくて戸惑いました。
dockerコマンドのエラー↓
Error response from daemon: dial unix docker.raw.sock: connect: connection refused
解決策の一例
Docker Desktop上でボタンをポチポチします。
上記画像の赤枠で囲んだ虫マークのボタンを押すと、以下のようになります。
上記画像の赤線を付したRestartボタンから、Docker Desktopは再起動できます。僕の場合はこの方法でDocker Desktopを再起動し、エラーが解消しました。
色々やってみてダメだったら、macの再起動をしてみるのも一つの手かと思います。。僕も最初はmacを再起動して対処してました。macの再起動後、Docker Desktopを起動します。
最後に
以上の手順で、僕の場合はエラーが解消しました。
何かの参考になれば嬉しいです!不適切な点などありましたら、ぜひコメントなどでお伝えいただけると。