2 つの Dokku ドロップレットに 2 つの nodejs アプリをデプロイするシナリオがあります。私のアプリの 1 つは、データを mongodb データベースに保存する 3 つの管理アプリです。もう 1 つのアプリは、そのデータベースからデータを読み取るメイン アプリケーションです。
このメインアプリをデータベースと通信させるにはどうすればよいですか?
2 つの Dokku ドロップレットに 2 つの nodejs アプリをデプロイするシナリオがあります。私のアプリの 1 つは、データを mongodb データベースに保存する 3 つの管理アプリです。もう 1 つのアプリは、そのデータベースからデータを読み取るメイン アプリケーションです。
このメインアプリをデータベースと通信させるにはどうすればよいですか?
環境変数を介してデータベースを dokku コンテナーにリンクする必要があります。基本的に、この方法論に従う必要があります: http://12factor.net/
2 台のサーバーのいずれかで、IP とポートの組み合わせを介してデータベースにアクセスできる必要があります。データベースと通信するために両方のサーバーが必要な場合は、外部からアクセス可能であり、適切に保護されていることを確認する必要があります (VPN 経由など)。
次に、次のように環境変数を設定できます。
dokku config:set DB_URL='mongo://10.0.0.1:4192/database_name'
セットアップに合わせて上記を明らかに変更します。
上記を実行するためのもう 1 つの簡単な方法は、これらの手順を基本的に自動化する dokku プラグインを使用することです。
プラグインのリストは、http: //progrium.viewdocs.io/dokku/pluginsで入手できます。
あなたのニーズに合ったmongoプラグインがあります。私は他のプラグインをいくつか使用しましたが、うまく機能します。