如何dockerize一个node.js与本地mongodb通话

假设您要dockerize一个node.js应用程序。 而这个node.js应用程序会在主机上与MongoDB的一个实例对话。 这是一个很好的做法吗? 它是如何完成的?

如果这不是一个好习惯,那么在Docker容器中提供一个与node.js脚本交互的MongoDB实例会更好吗?

谢谢!

好的做法是从官方图像创buildMongo DB容器,并将您的应用程序和Mongo数据库与Docker组合在一起。

这是您的项目的示例configuration: docker-compose.yml文件

 version: '2' services: web: image: node ports: - "80:80" volumes: - .:/code depends_on: - mongo mongo: image: mongo 

然后,您可以通过url从您的应用程序连接到mongo

var url = 'mongodb://mongo:27017/your_database';

以上答案是很好的做法。 fwiw,你也可以使用docker network ip作为你的mongo url。