为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

Go
蝴蝶不菲 2022-09-05 10:01:15
我在像这样的docker容器中运行MongoDBdocker run --name mongo -d -p 27017:27107 mongo与节目核对docker ps77f1a11295c3   mongo                  "docker-entrypoint.s…"   20 minutes ago   Up 20 minutes   27017/tcp, 0.0.0.0:27017->27107/tcp   mongo所以它在正确映射端口的情况下运行。当我尝试通过 Intellij 设置连接时它失败com.mongodb.MongoTimeoutException: Timed out after 10000 ms while waiting to connect. Client view of cluster state is {type=UNKNOWN, servers=[{address=localhost:27017, type=UNKNOWN, state=CONNECTING, exception={com.mongodb.MongoSocketReadException: Exception receiving message}, caused by {java.net.SocketException: Connection reset}}].当我尝试从 golang Web 服务器进行连接时客户端选项 := 选项。客户端()。ApplyURI(“mongodb://localhost:27017”) client, err := mongo.连接(上下文。TODO(), clientOptions)我收到此错误,它关闭了Web服务器:server selection error: server selection timeout, current topology: { Type: Unknown, Servers: [{ Addr: localhost:27017, Type: Unknown, Average RTT: 0, Last error: connection() error occured during connection handshake: connection(localhost:27017[-64]) incomplete read of message header: read tcp 127.0.0.1:40700->127.0.0.1:27017: read: connection reset by peer }, ] }这是MongoDB docker映像中的一个错误,还是我需要做其他事情?
查看完整描述

2 回答

?
哈士奇WWW

TA贡献1799条经验 获得超6个赞

我认为您在创建容器时有拼写错误。27017 and 27107

docker run --name mongo -d -p 27017:27017 mongo

这在 docker ps 命令中清晰可见。

你能尝试看看它是否能解决问题吗?


查看完整回答
反对 回复 2022-09-05
?
偶然的你

TA贡献1841条经验 获得超3个赞

正如@fly2matrix所说,你有一个错别字,我相信你还有另一个问题:

  1. 转发端口 27017:27107,其中容器端口不正确。检查 27107 而不是 27017

  2. 似乎您正在连接到localhost而不是mongo,因为我在您的代码中看到了短语localhost


查看完整回答
反对 回复 2022-09-05
  • 2 回答
  • 0 关注
  • 155 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号