链接Docker容器:Node.js + MongoDB

萨姆特布

我在将开发环境中的2个容器与Docker链接时遇到问题。

我已经有我的mongo容器正在运行调用db。

这是我的Node应用程序的Dockerfile:

FROM nodesource/node:4.0

ADD package.json package.json  
RUN npm install  
ADD . .
ENV NODE_ENV development

CMD ["node","server.js"]

构建图像后,我使用以下命令在链接容器内运行该图像:

docker run --name myapp --link db:db_1 -p 80:3000 -d myapp

这是我的两个容器:

容器ID图像命令
创建的状态端口
名称216304df0905 myapp“ node server.js”
25分钟前退出(1)13分钟前
myapp 506f9fcfd30b mongo“ /entrypoint.sh mongo”
19小时前向上19小时27017 / tcp db

myapp日志:

发展

服务器运行在http:// localhost:3000

/usr/src/app/node_modules/mongoose/node_modules/mongodb/lib/server.js:242 process.nextTick(function(){throw err;})^错误:在Object.exports中连接ECONNREFUSED 127.0.0.1:27017。导出时为_errnoException(util.js:837:11).TCPConnectWrap.afterConnect处为_exceptionWithHostPort(util.js:860:20)[完成时](net.js:1060:14)

我的应用程序和mongo之间的连接似乎无法正常工作。

有人可以帮我解决这个问题吗?

萨布米特

默认情况下,猫鼬会尝试连接到本地mongodb。为了能够使用mongodb容器,在建立连接时应使用其主机名(db_1)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章