【发布时间】:2015-01-12 00:22:55
【问题描述】:
我有一个场景,两个 nodejs 应用程序部署在两个 Dokku 小滴上。我的应用程序之一是三个管理应用程序,它将数据存储到 mongodb 数据库。另一个应用程序是从该数据库读取数据的主应用程序。
如何使这个主应用程序与数据库通信?
【问题讨论】:
标签: node.js digital-ocean dokku
我有一个场景,两个 nodejs 应用程序部署在两个 Dokku 小滴上。我的应用程序之一是三个管理应用程序,它将数据存储到 mongodb 数据库。另一个应用程序是从该数据库读取数据的主应用程序。
如何使这个主应用程序与数据库通信?
【问题讨论】:
标签: node.js digital-ocean dokku
您需要通过环境变量将数据库链接到 dokku 容器。你基本上需要遵循这个方法:http://12factor.net/
需要通过两台服务器之一上的 IP 和端口组合访问数据库。如果您需要两台服务器都与数据库通信,那么您需要确保它可以从外部访问并得到适当的保护(例如通过 VPN)。
然后您可以像这样设置环境变量:
dokku config:set DB_URL='mongo://10.0.0.1:4192/database_name'
显然更改以上内容以匹配您的设置。
完成上述操作的另一种可能更简单的方法是使用一个 dokku 插件,它基本上可以自动执行这些步骤。
插件列表位于:http://progrium.viewdocs.io/dokku/plugins
有一个 mongo 插件可能适合您的需求,我使用了其他一些插件,它们运行良好。
【讨论】: