Я считаю довольно распространенным, что у меня есть несколько сред (например, test и prod), но контейнеры Docker, которые я хочу запустить, одинаковы в обеих средах. Единственная разница - это конфигурация приложения, которую я хочу указать с помощью env-file
. Поскольку у меня есть несколько контейнеров и зависимости между ними, я хочу использовать docker-compose. Но afaik я могу указать env-file
внутри файла docker-compose.yml
(см. docs). Если это так, мне нужно клонировать мой оригинальный docker-compose.yml
в два разных файла (один для теста и один для prod), чтобы указать на разные файлы env. Это означает, что я должен поддерживать два docker-compose.yml
файла вместо одного, и если я вношу какие-либо изменения, мне нужно обновить оба файла.
Это действительно соответствует дизайну? Почему docker-compose
не указывать --env-file
, когда я делаю docker-compose up
или docker-compose run
?