dockerfile中的node.js无法通过mongoose连接到mongolabs:getaddrinfo ESRCH

我做了一些谷歌search,但没有find任何东西..

我的设置是这样的:OS X,boot2docker,除了mongolabs数据库以外的所有东西。

当它不在docker内时,该项目工作正常。

我正在尝试在Docker镜像中运行我的nodejs项目。 我以前做过,但没有数据库连接的要求。 问题是,我的节点应用程序在启动时崩溃的信息:

/src/node_modules/mongoose/node_modules/mongodb/lib/server.js:228 process.nextTick(function() { throw err; }) ^ Error: getaddrinfo ESRCH at errnoException (dns.js:37:11) at Object.onanswer [as oncomplete] (dns.js:124:16) 

有没有人有任何想法如何解决这个问题? docker中是否有一个可以设置的DNS标志,或者阻塞我与外部的连接?

编辑:

我通过mongoose连接到我的mongolab上的mongodb。

 var configDB = require('./config/database.js'); mongoose.connect(configDB.url); 

和我的passport.js文件看起来像这样:

 module.exports = { 'url' : 'mongodb://<user>:<password>@ds045027.mongolab.com:45027/database };