我有以下docker compose
文件,可用于启动mongo
码头集装箱,该码头集装箱可以按预期工作。
但是,我似乎无法从本地计算机上的compass
连接到容器。
我做了一个docker inspect
的mongo容器,得到了它的IP,并尝试使用它在罗盘中进行连接,但是它没有用-连接只是超时。
是我的docker网络的IP还是我需要的mongo容器的IP?
docker撰写文件:
version: "3"
services:
pokerStats:
image: pokerStats
container_name: pokerStats
ports:
- 8080:8080
depends_on:
- db
db:
image: mongo
container_name: mongo
volumes:
- ./database:/data
ports:
- "27017:27017"
答案 0 :(得分:1)
您正在将端口27017从您的主机映射到容器上的端口27017。因此,以下连接字符串应该有效mongodb://localhost:27017
答案 1 :(得分:1)
我能够使用this question上的最佳答案来解决这个问题。
我必须更改我的docker-compose
文件以在本地上公开端口27018:
db:
image: mongo
container_name: mongo
volumes:
- ./database:/data
ports:
- "27018:27017"
我在Compass
上的连接详细信息为: