MongoDB使用docker + node.js + mongodb自动重新连接

时间:2015-07-26 22:52:16

标签: node.js mongodb docker

在一个容器(container1)中,我有一个正在运行的mongod守护进程。此容器使用node.js(container2)链接到另一个容器。

当我启动容器时,一切正常:

docker start container1
docker start container2

当我重新启动container1时,第二个容器中的node.js脚本失去了与mongodb的连接,并且由于mongodb的IP发生了变化,因此无法重新连接。

如何配置node.js以使用mongodb服务器的新IP重新连接?

更新:简化代码,在重新启动container1后停止工作:

var http = require('http')
  , mongodb = require('mongodb');

mongodb.MongoClient.connect('mongodb://username:password@container1:27017/dbname', {uri_decode_auth: true, server: {auto_reconnect: true}}, function(err, db) {
    http.createServer(function(request, response) {
        // Do some work with db and send response
    }).listen(config.port);
});

0 个答案:

没有答案