Я пытаюсь обмотать голову вокруг Докера, но мне сложно понять это. Я попытался реализовать его в своем маленьком проекте (стек MERN), и я думал, как вы отличаетесь между разработкой (возможно, постановкой) и производственными средами.
Я увидел один пример, в котором они использовали 2 файла Docker и 2 файла для создания docker файлов (каждая пара для одного env, поэтому Dockerfile + docker-compose.yml для prod, Dockerfile-dev + docker-compose-dev.yml для dev).
Но для меня это кажется немного лишним. Я бы предпочел использовать его только в двух файлах.
Также одна из проблем заключается в том, что, например, для разработки Я хочу установить nodemon глобально, но не для поддукции.
В идеальном решении я представляю себе что-то вроде этого
docker-compose -e ENV=dev build
docker-compose -e ENV=dev up
Имейте в виду, что я до сих пор не полностью получаю докер, поэтому, если вы поймаете некоторые мои неправильные представления о докере, вы можете указать их.