😸
Dockerにおける環境変数のわかりやすい概要図
Dockerの環境変数についてまとめたメモです。
docker-compose.ymlファイルを利用した起動になります。(compose.ymlでも可)
説明
- 外部からコンテナの環境変数を設定する場合、以下の選択肢がある
- .envファイル(環境変数を複数設定したいときに便利)(①)
- ホストのOS環境変数
- docker-compose.ymlの「environment」で定義した変数(いずれの場合にもコンテナに環境変数を設定する場合は必須)(③)
- ビルド時に環境変数を設定したい場合は「args」セクションを利用して変数をビルドステージで設定する必要がある(④)
全体イメージ
docker composeコマンドを実行時「各ファイル読み込み~コンテナ作成」までの流れ
- docker-compose.yml の読み込み
- .env ファイルの読み込み(オプション)
- docker-compose.ymlの${ENV_HENSU2}が置き換えされる(③、④)
- ネットワークの作成
- ボリュームの作成
- 各サービス(コンテナ)のビルドまたはプル
- build セクションが定義されている場合、Dockerfileを利用してビルド(④)
- コンテナの起動
- 依存関係の確認
- ログストリームの表示
結論
図にするってすごい時間かかる
Discussion