0

システム環境変数 (例: 「staging」、「production」) を使用して、openshift nodejs アプリ環境を識別しています。私のカスタム環境変数名はOPENSHIFT_APP_ENV. これを設定し.bash_profileて実行しましsource .bash_profileた。

printenvまたはopenshiftecho $OPENSHIFT_APP_ENVアプリのコマンド ラインで実行すると、値が正しく設定されていることがわかります。

しかし、これらの変数は、私の nodejs アプリでは読み取り/設定されません。私は単にそれを次のように読もうとしていますglobal.ENV = process.env.OPENSHIFT_APP_ENV || "development";

単純な設定の問題だと思いますが、どうにかうまくいきませんでした。どんな助けでも大歓迎です。

4

1 に答える 1

1

Developer Center のこのセクション ( https://developers.openshift.com/en/managing-environment-variables.html#custom-variablesrhc env set ) で説明されているコマンドを使用して、環境変数を設定する必要があります。特にスケーリングされたアプリケーションを使用している場合は、カスタム環境変数がすべてのギアで作成されていることを確認してください。

NODE_ENV 環境変数を使用して、操作している環境を判断することも標準的な方法です (私は信じています)。

また、環境変数を作成した後、アプリケーションを停止して開始する (再起動しない) ことを確認して、プロセスがそれらを正しく取得するようにする必要があります (アプリケーションが .bash_profile からのものを認識しないという問題を解決する可能性がありますが、私は代わりに rhc env set コマンドを使用することをお勧めします)

于 2015-02-28T19:02:06.403 に答える