将 Docker 映像从 Azure Devops 构建工件推送到映像存储库

时间:2021-06-23 04:05:48

标签: docker kubernetes azure-devops docker-registry azure-pipelines-yaml

我正在使用 yml 文件构建 Azure DevOps 管道。

在 yml 定义中我有两个阶段,一个是构建 docker 镜像,第二个阶段是将这些镜像推送到 ACR。我可以在第一步中将 docker 图像存储为构建工件。我还可以将构建工件下载到 $(Pipeline.Workspace) 中。我找不到将映像从 $(Pipeline.Workspace) 推送到容器注册表的方法,因为 docker save 没有引用 $(Pipeline.Workspace) 工作区目录的参数。

- task: Docker@2
  displayName: Push Image to Repository
  inputs:
    command: push

1 个答案:

答案 0 :(得分:1)

你可以试试Build and push an image to container registry

- stage: Build
  displayName: Build and push stage
  jobs:  
  - job: Build
    displayName: Build job
    pool:
      vmImage: $(vmImageName)
    steps:
    - task: Docker@2
      displayName: Build and push an image to container registry
      inputs:
        command: buildAndPush
        repository: $(imageRepository)
        dockerfile: $(dockerfilePath)
        containerRegistry: $(dockerRegistryServiceConnection)
        tags: |
          $(tag)

你可以参考这个话题How to build docker image and push to azure container registry