无法连接到在Docker容器中运行的mongodb

问题描述 投票:0回答:2

我正在运行一个mongoDB数据库容器,但无法使用Robo 3T连接到它,出现以下错误。

enter image description here

Container is running and waiting for connection at 27017

Docker ps shows the same

connection settings in robo 3T

在这里我想念的任何帮助。

mongodb docker robo3t
2个回答
0
投票

查看docker ps输出的PORTS列:

港口27017 /台

未指定映射(->符号)。这意味着容器端口不会在docker网络外部发布。

解决问题的两种可能方法:

  • 不指定localhost作为主机名,而是容器ip:您可以使用docker inspect CONTAINER检索它。如果您使用cygwin:docker inspect CONTAINER | grep IPAddress
  • 在主机上发布mongo容器端口。您可以使用-p参数(例如-p HOST_PORT:CONTAINER_PORT)将其发布在同一端口上,也可以不在同一端口上发布。例如,使用相同的端口:docker run -d -p 27017:27017 mongo:latest

您可以通过docker ps看到端口现在已在主机上发布:

港口0.0.0.0:27017->27017/tcp

0
投票

将mongodb端口绑定到您的Docker主机,以便使用主机上的localhost使用它-

docker run -d -p 27017:27017 ....

我怀疑您缺少-p 27017:27017

© www.soinside.com 2019 - 2024. All rights reserved.