我已经构建了一个简单的Docker Compose项目作为开发环境。我有PHP-FPM,Nginx,MongoDB和代码容器。
现在,我想使流程自动化并部署到生产中。docker-compose.yml
可以扩展,并且可以定义多个环境。有关更多信息,请参见https://docs.docker.com/compose/extends/。
但是,我的容器有Dockerfile。与开发环境相比,在开发环境中需要更多的软件包。
主要问题是我应该为dev
和prod
使用单独的dockerfile并在docker-compose.yml
和production.yml
中对其进行管理吗?
单独的dockerfile是简单的方法,但是有代码重复。
另一个解决方案是使用环境变量,并以某种方式从bash脚本(也许作为入口点?)处理它们。
我正在寻找其他想法。
最佳答案