Docker: socket not found

Feb 6, 2023 22:32 · 57 words · 1 minute read

Error pinging Docker server: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running? 🔗

docker desktop の代わりに colima を使っている環境で、terraform の docker リソース( kreuzwerker/docker ) を使うと、表題のエラーに遭遇した。

普通 docker daemon を起動すると、/var/run/docker.sock に unix ドメインソケットが作成され、クライアントはそこに接続する。

colima を使うと、VM にはデフォルトで $HOME をマウントしてそこにソケットを作り、colima と通信するための docker context に切り替える。

terraform では依然として /var/run/docker.sock を期待するので、colima の時にこのエラーが発生する。

解決方法 🔗

# DOCKER_HOST を確認する。
docker context list
export DOCKER_HOST=<上の値>