将已构建的Docker映像从VSTS Build Pipeline传递到VSTS Release Pipeline

时间:2019-04-03 23:04:00

标签: docker azure-devops azure-pipelines-release-pipeline azure-pipelines-build-task elastic-container-registry

将构建的Docker映像从构建管道传递到发布管道

我目前正在VSTS Build Pipeline中成功构建Docker映像。我想拍摄此构建的映像,然后将其作为构建工件发布,以便VSTS发布管道可以使用我们的AWS凭证将映像推送到我们的Elastic Container Registry。

目前,我正在发现涉及一个或另一个的一系列解决方法-一个用于构建映像的Build管道,然后通过CLI将其推送到ECR,或一个具有Bash任务的单个Release Pipeline来构建映像,然后要执行的ECR任务。

我尝试了很多不同的事情,包括发布Ubuntu将Docker容器存储在其中的目录(由于权限而无法使用)。我试图在我的Build Pipelines公司进行构建,而Release Pipelines进行部署时保持一致的范例。似乎不试图在发布ECR时将这两个想法混为一谈是不可能的。

这有可能吗? 谢谢!

1 个答案:

答案 0 :(得分:0)

使用服务连接的示例yaml构建:

jobs:
- job: build_server
  timeoutInMinutes: 30 
  pool:
    vmImage: 'Ubuntu-16.04'
  steps:
  - checkout: self
    clean: true

  - task: Docker@1
    inputs:
      containerregistrytype: 'Container Registry'
      dockerRegistryEndpoint: yyy
      imageName: xxx
      includeLatestTag: true
      dockerFile: dockerfile
  - task: Docker@1
    inputs:
      containerregistrytype: 'Container Registry'
      dockerRegistryEndpoint: yyy
      imageName: xxx
      command: push