无法连接到在docker-machine上运行的mongodb实例

我相当新的docker,我试图从我的机器连接到docker机上运行的mongo服务器。

我在官方的mongo仓库中logging了Docker镜像的开始:

docker run --name my-mongo -d mongo

因为我在docker-machine上运行,我正在使用机器ip(通过docker-machine ip dev )以及默认的mongo端口并键入:

mongo --host 192.168.99.100 --port 27017

我得到这个回应:

 2015-09-28T17:20:14.438+0300 warning: Failed to connect to 192.168.99.100:27017, reason: errno:61 Connection refused 2015-09-28T17:20:14.439+0300 Error: couldn't connect to server 192.168.99.100:27017 (192.168.99.100), connection attempt failed at src/mongo/shell/mongo.js:148 exception: connect failed 

从日志中我可以看到,mongo刚开始就好了:

 2015-09-28T14:12:47.550+0000 I STORAGE [FileAllocator] creating directory /data/db/_tmp 2015-09-28T14:12:47.551+0000 I STORAGE [FileAllocator] done allocating datafile /data/db/local.0, size: 64MB, took 0 secs 2015-09-28T14:12:47.554+0000 I NETWORK [initandlisten] waiting for connections on port 27017 

我错过了什么 – 是我的configuration还是我试图启动mongo shell的方式(我也尝试与节点应用程序连接 – 也没有成功)。

检查IP可以从您的系统ping。 如果是这样

在Dockerfile中完成了端口转发

您必须将运行mongo数据库的docker端口映射到系统端口,并且如果您未从本地系统连接,则需要连接到该端口