2

我正在使用 Azure Pipelines(采用 YAML 格式)构建 Dockerfile 并将图像推送到Azure Container Registry

这是 YAML 定义的一部分:

- task: Docker@2
  displayName: Build Dockerfile
  inputs:
    command: 'build'
    containerRegistry: 'containerRegistry'
    repository: '$(imageRepository)'
    Dockerfile: 'src/Api/Dockerfile'
    buildContext: '.'
    tags: '$(imageTag)'

- task: Docker@2
  displayName: Push image
  inputs:
    command: push
    containerRegistry: 'containerRegistry'
    repository: '$(imageRepository)'
    tags: '$(imageTag)'

所以我的问题是,有没有办法检索docker push任务的摘要值,以便我可以在下一个任务中使用它?

似乎在旧版本的 Docker 任务中,这是可能的,并且有一个任务参数imageDigestFile,我指的是Docker@0.

不幸的是,现在看起来已弃用,我找不到使用最新版本的方法。

谢谢!

最好的问候,尼古拉

4

1 回答 1

0

不幸的是,现在看起来已弃用,我找不到使用最新版本的方法。

这是最新版本的 docker push 任务的已知问题:

如何使用 DockerV2 任务的输出

那是因为该产品团队试图限制任务的输入数量以简化它DockerV2。所以他们没有提供对图像摘要文件的支持。但是图像摘要被写入名为DockerOutput.

源代码在这里

并且产品团队将与参与此任务设计的人员一起工作,看看如何完成这项工作。

为了解决这个问题,我们可以尝试使用旧版本的 Docker 任务或解析输出DockerOutput并获取图像摘要

于 2020-08-10T02:11:02.317 回答