在一个容器(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);
});