Bitbucket管道中忽略Docker构建目标

cczfrluj  于 2023-03-22  发布在  Docker
关注(0)|答案(1)|浏览(125)

我遇到了一个问题,在bitbucket管道中构建一个docker镜像。我使用的是bitbucket云托管解决方案,而不是自托管运行器。
我有一个带有多个构建阶段的Dockerfile。当在bitbucket管道中运行以下命令时,--target选项被忽略。
步骤:

definitions:
  steps:
    - step: &build-staging
        name: Build staging
        services:
        - docker
        script:
          - docker build -t image_name --target staging .

我没有发现任何关于在bitbucket管道中运行docker命令的文档中提到关于多阶段构建的限制。你知道吗?

46qrfjad

46qrfjad1#

这不是Bitbucket的问题,而是Docker本身的问题。BuildKit在遗留Docker构建引擎的多阶段构建中修复了这个bug。
因此,只需通过插入以下行来启用BuildKit

- export DOCKER_BUILDKIT=1

docker build ...命令之前,将使用指定的目标构建映像。

相关问题