Dockerを使った開発における開発環境と本番環境、ついでにテスト環境
Dockerを使った開発時に、開発環境、テスト環境から本番環境までを綺麗に作りたい テスト環境は全部入りでもいいが、ビルドしたものとテストに必要なものだけで済むならその方がいい(本番環境に近くなるので) docker-compose.ymlをdocker-compose.override.ymlとかdocker-compose.prod.ymlとかに分ける
Dockerfileだけでは完結しないので、どちらでもできる部分の適切な切り分けを考える
docker buildでできるイメージが中途半端なものになる?
本番用だけでも(docker-compose buildでできるのと同じものが)docker buildでも作れるようにしておけたら気分がいいのだが……
releaseブランチに色々削ぎ落とした版を作る
releaseブランチがテストされたものであることを担保しづらい(テスト環境も削ぎ落としてしまうので)
開発環境およびテスト環境と、本番環境の乖離が心配。開発環境から本番環境まで、適切に削ぎ落とす必要がある
環境ごとに分ける
Docker Composeも使う場合が多いので、docker-compose.ymlとDockerfileがそれぞれ複数あってやばいことにならないか