やる気がストロングZERO

やる気のストロングスタイル

docker-compose.ymlをDRYに書く

参考) docker-compose で複数環境を構築するときの設定をなるべく DRY に書く - ikasama over technology

ここに書かれてる「修羅の道」をやってしまってた。

DRYに書くには以下の様にするらしい。

  • 共通docker-compose.yml(これだけで基本動く様にする)
  • 差分環境docker-compose.yml(共通部分の変更したい部分だけのyml。上書きされる)
$ docker-compose -f 共通docker-compose.yml -f 差分環境docker-compose.yml -p 環境名 up -d

最終的にどんな設定になるのかは、 docker-compose config コマンドを使うと見れるとのこと。

$ docker-compose -f 共通docker-compose.yml -f 差分環境docker-compose.yml -p 環境名 config

-pオプション

docker-compose upするとできるコンテナのプレフィックス名を指定できる感じ。
共通環境と差分環境の両方をupしたい場合など、これをそれぞれ別名で指定しないと、衝突して後勝ちになる。