我正在嘗試使用 docker compose 運行我的 node.js 應用程式和 mongodb。我可以如下成功設定容器。該網站也在運作。但我無法登入容器。
docker ps -a
輸出
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
68582ac4aa9a projet/nodeserver "/bin/bash -c 'sourc…" 2 hours ago Up 2 hours 0.0.0.0:8080->8080/tcp apiserver
81b6c0c65e43 mongo "docker-entrypoint.s…" 2 hours ago Up 2 hours 0.0.0.0:27017->27017/tcp mongodb
我還可以使用主機(Mac)上的 mongodb 用戶端連接 mongodb 伺服器。但是當我嘗試登入 mongodb 容器時,它會拋出以下錯誤。
ssh 進入 mongo docker
docker exec -it mongodb /bin/bash
錯誤
connection error: desc = "transport: dial unix /var/run/docker/containerd/docker-containerd.sock: connect: connection refused": unknown
這是什麼意思?我該如何修復它?
答案1
您是否嘗試使用容器 ID 連接它?
嘗試這個:
docker exec -it 81b6c0c65e43 bash
如果不起作用,請嘗試按如下方式重新啟動容器:
docker restart 81b6c0c65e43