0

jazz.net からデプロイした後、Bluemix が環境値をリセットするのに苦労しています。

エラーを再現するには、次の手順を実行します

bluemix コンソールから、console.ng.bluemix.net - アプリケーションを見つけます - ランタイムに移動します -> 環境変数 - 変数を追加します ここに画像の説明を入力

次に、[保存] をクリックします。これにより、アプリケーションが再起動され、入力した環境変数が使用されます。

次に、hub.jazz.net に移動し、プロジェクトの git を見つけて、上部の再生ボタンを押してデプロイします。

ここに画像の説明を入力

アプリが再起動します。

次に、コンソールに戻って環境変数を確認すると、それらが失われていることがわかります

ここに画像の説明を入力

これは通常の動作ではなく、jazz からデプロイした後も env 変数が保持されるはずです。それが事実ではない場合でも、ハードコーディングせずに永続化する方法があります。

4

1 に答える 1

1

Cloud Foundry のドキュメントに基づくと、これは正常な動作のようです。また、デプロイごとに基本的に新しいアプリケーションがあるため、この動作も期待できます。

環境変数は、次の方法でマニフェストと対話します。

  • アプリケーションを初めてデプロイするとき、Cloud Foundry はマニフェストの環境ブロックに記述されている変数を読み取り、アプリケーションがステージングされているコンテナーの環境と、アプリケーションがデプロイされているコンテナーの環境に追加します。

  • アプリケーションを停止して再起動すると、その環境変数は保持されます。

これは、マニフェスト ファイルで定義された環境変数の動作です。また、マニフェスト ファイルを介して変数を設定するなど、変数を永続化する方法についても示唆しています。新しいセクション/エントリを追加します:

env:
  PARSE_DASHBOARD_ALLOW_INSECURE_HTTP: 1

これはセミハードコーディングされていますが、アプリ自体にはありません。

もう 1 つのオプションはcf set-env、展開プロセス中にコマンドを実行することです。これにより、コマンドラインから環境変数が作成および設定されます。

于 2017-01-12T08:23:46.767 に答える