假设我有一组图像,这些图像取决于共同的基本图像:
FROM ubuntu:16.04
ENV FOO 1
FROM mybaseimage # where mybaseimage corresponds to base
CMD ["bar1_command"]
FROM mybaseimage # where mybaseimage corresponds to base
CMD ["bar2_command"]
是否可以创建
docker-compose
文件,而无需运行它就可以构建base
?可以说我有以下依赖性:version: '2'
services:
child1:
build: ./path-to-child1-dockerfile
services:
child2:
build: ./path-to-child2-dockerfile
depends_on:
- child1
我希望
base
可以构建,即使未显式启动。这样的事情可能吗?还是我应该简单地使用外部Makefile建立依赖关系?build_base:
docker build -t mybaseimage mybaseimage
build_all: build_base
docker-compose build
最佳答案
使用Makefile。 docker-compose并非旨在构建镜像链,而是为运行容器而设计。
您可能还对dobi感兴趣,它是一个旨在与docker镜像和容器一起使用的构建自动化工具(如make)。
免责声明:我是 dobi 的作者