标记Docker多阶段构建的所有阶段

时间:2020-11-12 16:33:12

标签: docker dockerfile

是否可以构建和标记多阶段构建的所有阶段?一个冗长(且有些缓慢)的解决方法是多次调用docker build

DOCKER_BUILDKIT=1 docker build
    --target builder
    --tag bdr
DOCKER_BUILDKIT=1 docker build
    --target build
    --tag bd
DOCKER_BUILDKIT=1 docker build
    --target runtime
    --tag rt
DOCKER_BUILDKIT=1 docker build
    --target test
    --tag tst

编辑:就我而言,每次致电docker build都需要2秒钟的开销:

#1 [internal] load .dockerignore
#1 transferring context: 34B done
#1 DONE 0.6s

#2 [internal] load build definition from Dockerfile
#2 DONE 0.7s

#3 [internal] load metadata for my_parent_image...
#3 DONE 0.7s

#4 [builder 1/6] FROM my_parent_image@s...
#4 DONE 0.0s

1 个答案:

答案 0 :(得分:2)

这是docker buildx bake的一个功能,目前仍被认为是实验性功能,我对社区的语法没有太多的兴趣。

buildkit issues中添加此功能肯定有一些讨论,如果您希望看到添加的功能,我建议您遵循这些问题并添加用例。