我有一个场景,两个 nodejs 应用程序部署在两个 Dokku 液滴上。我的应用程序之一是三个管理应用程序,它将数据存储到 mongodb 数据库。另一个应用程序是从该数据库读取数据的主应用程序。
如何使这个主应用程序与数据库通信?
我有一个场景,两个 nodejs 应用程序部署在两个 Dokku 液滴上。我的应用程序之一是三个管理应用程序,它将数据存储到 mongodb 数据库。另一个应用程序是从该数据库读取数据的主应用程序。
如何使这个主应用程序与数据库通信?
您需要通过环境变量将数据库链接到 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 插件可能适合您的需求,我已经使用了其他一些插件,它们运行良好。