0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

docker compose での環境変数切り替えは .env ファイルではなく environment に直接記述した方が分かりやすいんじゃ

0
Last updated at Posted at 2024-07-08

docker compose の例

次のように書いておけば、何かと使いやすい気がする

  • XXX_ENV=yeah docker compose up のようにコマンドレベルで環境変数指定が出来る
  • local (ホスト端末) で 環境変数指定なしで docker compose up した場合の固定値も指定できる
version: '3.8'
services:
  xxx_service:
    # ...
    environment:
      # docker compose up 実行時に環境変数指定できるもの
      # ブレースの中は ${localで指定可能な環境変数名:-無指定の場合の固定値} という記法
      - 'XXX_ENV=${XXX_ENV:-foo}'
      # docker compose up 実行時に環境変数指定させていない固定値のもの
      - 'YYY_ENV=bar'

環境変数ファイルを使う例

.env.development のように環境変数指定用のファイルを読み込ませておいて、そのファイル自体は gitignore しておく運用を多く見かける

だがこの方法だとファイルの状態によって開発者間で環境の差異が生じたり、どこで環境変数をコントロールしているのかがわかりづらかったり、という欠点がある

version: '3.8'
services:
  xxx_service:
    # ...
    env_file:
      - .env.development

チャットメンバー募集

何か質問、悩み事、相談などあればLINEオープンチャットもご利用ください。

プロフィール・経歴

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?