我正在尝试使用 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