2016-08-26 12 views
2

私は構成管理を行うために両方の方法を使用している人に出会った。構成管理のためのNodeJS config.jsonとprocess.env

各アプローチの賛否両論は何ですか?

私が設定オブジェクトに格納する変数がたくさんある場合、ノードアプリケーションを実行する前に起動スクリプトでそれらを1つずつ設定する必要がありますか?

+0

これは確かにコンテキストと達成しようとしているものによって異なります。一般的にconfigsをconfig.jsonなどのファイルに設定し、そのファイルを.gitignoreに入れることは、あなたのレポを見ている人にプライベートAPIキーを公開しないようにする方法です。 process.envを使用すると、コード内ですぐに処理されます。あなたはその状況についてより具体的になりますか? –

答えて

3

一般的に、アプリケーションをステートレスにするには、envvarを使用します。同じコードベースが開発環境、ステージング環境、テスト環境、運用環境で動作するはずです。 デバッグがオンであるかどうかにかかわらず、ログが有効であるかどうかにかかわらず、MySQL設定、APIキーのようなvarを設定します。

設定ファイルは、環境に依存しない変数に使用されます。たとえば、アプリケーションの名前、1ページあたりの項目数...

-1

大きな設定を保存するのにconfig.jsonファイルを使用することができますね。 ENV私は通常、アプリケーションポートや、通常のアプリケーション起動には非常に重要なものを渡すために使用しました。たとえば、いくつかの外部ライブラリを使用している場合、ENVのlib executorへのカスタムパスを渡すことができます。 P.P.あなたは決してconfig.jsonをSVNに保存しないでください。

関連する問題