共享构建逻辑与docker-compose和多阶段Dockerfiles

时间:2018-01-11 03:13:50

标签: docker docker-compose dockerfile docker-multi-stage-build

我正在使用docker-compose多阶段Dockerfiles来构建和运行多个服务。这是有效的,但每个多阶段构建的“构建”部分主要是在每个服务的Dockerfile之间进行复制和粘贴。我希望在一个位置减少复制和粘贴/集中公共构建逻辑。

阅读https://engineering.busbud.com/2017/05/21/going-further-docker-multi-stage-builds/我可以使用共享构建步骤创建本地映像,并让服务Docker文件依赖它,但我希望开发体验简单docker-compose up。创建本地构建映像意味着开发人员必须首先知道运行docker build [common_build_image]以便构建映像在本地存在,然后运行docker compose up来构建和运行依赖它的所有服务。

似乎没有办法将Dockerfile包含到另一个Dockerfile中。 FROM似乎不支持本地路径。

有没有办法实现我想要的?当然,我可以使用shell脚本将所有内容绑定在一起,但这基本上就是多阶段构建试图解决的问题。

1 个答案:

答案 0 :(得分:0)

事实证明你可以"撰写" docker-composehttps://docs.docker.com/compose/extends/#adding-and-overriding-configuration这就是我要找的。