docker-compose.ymlで環境変数を使用する方法

環境

  • windows10
  • DockerDesktop for Win 3.5.x
  • VsCode
  • gitbash 2.32.0.1

ディレクトリ構成

sample
└docker
└docker-compose.yml
└.env
└.env.example

使用方法

  • コンテナのポートや、mysqlのパスワード等を環境変数として使用することが多い。以下はコンテナポートの例
  • ${}で囲んであげるだけでOK
  • docker-compose upでコンテナ起動時に環境変数が展開する

docker-compose.yml

version: "3.8"
services:
  frontend:
    container_name: frontend
    build: ./docker/node
    ports:
      - ${FRONTEND_PORT}:3000

あらかじめリポジトリなどに.env.exampleを用意し、各自にコピーして.envを作成して、環境変数を設定してもらう

.env

FRONTEND_PORT=8020
....

環境変数が展開された最終的なymlを確認する方法

  • 以下コマンドで確認することが可能
  • コンテナ起動時とかにエラーが出ている場合は、こちらで確認すると便利
docker-compose config

// ymlファイルとして出力したければこちら
docker-compose config > hoge.yml

以上です。

タイトルとURLをコピーしました