#author("2023-01-06T17:57:04+09:00","default:ryuichi","ryuichi")
#author("2023-01-06T18:06:41+09:00","default:ryuichi","ryuichi")
* docker composeでホストOSのシェルの環境変数をコンテナに渡す [#zd16477d]

** 命題 [#i7fd73d7]
- シェルの環境変数DEBUGをコンテナに渡す

** 手順 [#za752999]
*** docker-compose.yml [#x3d7b8a3]

 version: '3'
 services:
    app:
      env_file:
        - myenv.txt
      environment:
        - DEBUG=$DEBUG

- env_file
- コンテナに渡す環境変数をenvironmentに記述する
- 注意点として、env_fileのmyenv.txtに書かれた環境変数は、docker-compose.ymlファイルの中では参照できないので、シェルの環境変数を渡す手段にはならない
- なお、environmentはenv_fileより優先するので、myenv.txtに書かれた環境変数と同じ変数がenvironmentにあった場合は上書きされる

*** コンテナ起動 [#kafea03a]
 $ DEBUG=123 docker-compose up

- ここではコマンドラインでDEBUG=123を指定してるが、シェルの機能を使えばなんでもいい。.bashrcに書くとか

** 参考 [#me8fc55e]

https://stackoverflow.com/questions/49293967/how-to-pass-environment-variable-to-docker-compose-up

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS