Oracle Application Container Cloud における環境変数の設定方法

Oracle Application Container Cloud (ACC) を使用した Web アプリにおいて、環境変数を使用する方法。

目次

管理画面上で設定する

環境変数の最も簡単な設定方法は、ACC の管理画面上で行うというもの。Heroku とほとんど同じだ。

インスタンスの詳細画面に移動したら、「デプロイメント」項目を選ぶ。「サービス・バインディング」欄に「環境変数」タブが表示されているので、ココの「Add」ボタンを押下すると、環境変数を追加できる。

追加済みの環境変数を変更・削除したい場合は、その下のテーブルから目的の環境変数を選び、右端の「Actions」ボタンより操作できる。

追加・変更・削除を行ったら、「編集の適用」ボタンを押下することで反映できる。資材はそのままに、仮想環境の再デプロイが行われるので、反映までに数分かかる。

また、環境変数を変更したことでアプリが正常に起動できなくなった場合は、直前の環境にロールバックされるので、環境変数の変更も取り消される。

deployment.json で設定する

アプリケーション・マニフェストファイル (manifest.json) と同様のノリで、「デプロイメント構成ファイル」という JSON ファイルが用意できる。コチラをアップロードすることでも環境変数が設定できる。

deployment.json の構成は以下の要領で。

{
  "memory": "1G",
  "instances": 1,
  "environment": {
    "MY_SECRET_TOKEN": "examplehogefugahxxxxxxxx",
    "【環境変数名】": "【値】"
  },
  "secureEnvironment": [],
  "system_properties": {},
  "services": [],
  "volumes":[]
}

environment プロパティ配下に、連想配列として記述すれば OK。その他の項目は適当にそのままで良い。

コレを「デプロイメント」画面 → 「デプロイ済アプリケーション」欄 → 「デプロイメント構成:」欄よりアップロードして、「編集の適用」ボタンを押下すれば、環境変数が設定される。

deployment.json に書いてあるモノと総取っ替えとなる。つまり、このファイルに書かれていない環境変数を定義していたら、その環境変数は削除扱いになるので注意。

なお、この deployment.jsonmanifest.json は、アプリケーション・アーカイブの Zip ファイルに同梱してアップロードしても反映されるので、以下のように圧縮するのが手軽でオススメ。

$ zip -r my-project.zip manifest.json deployment.json package.json index.js node_modules/ -x node_modules/oracledb*