概要
rails(6.1)+mysql(8.0)の環境をDockerで構築した際に学んだ、env.ファイルの記述場所とそれに付随したことについてです。
env.ファイルはdocker-compose.ymlのenv_fileに書く
はじめは、env.ファイルを読み込むためにGemfileに gem 'dotenv-rails'
を記述していました。
docker-compose.ymlの項目であるenv_file
に記述することでも環境変数を読みこむことができます。
env_file
に記述することでenv.
に記述した環境変数を使うことができます。
docker-compose.ymlに必要なことをまとめられるのでこちらの方がわかりやすいと思いました。
env_file と env. の違い
-
env_file
env_file
はdocker-compose.ymlの項目の1つで、環境変数を記述したファイルを読みこむもの -
env.
コンテナ内で使う環境変数を記述するファイル
ホストに環境変数の設定があればホスト側が優先される
最後に
もともとdocker内で環境変数を読みこむ方法について調べていました。がenv系のそれぞれの違いなどがわかっていなかったので、環境変数についても理解を深めることができました。