**要求:**我必须使用Docker Hub凭据构建Docker映像并将其推送到Harbor存储库
下面的代码段在Azure管道中工作,但不确定构建映像时是否使用了Docker凭据
是否有方法在Azure Pipeline(Devops)中检查它在构建映像时是否正在使用Docker Hub凭据?
- task: Docker@2
displayName: docker login
inputs:
containerRegistry: 'docker-connection'
command: 'login'
- task: Docker@2
displayName: build image on docker hub and tag it with harbor
inputs:
containerRegistry: 'harbor-connection'
command: 'build'
repository: 'repository'
Dockerfile: '**/Dockerfile'
tags: '12345'
- task: Docker@2
displayName: docker push
inputs:
containerRegistry: 'harbor-connection'
command: 'push'
repository: 'repository'
tags: '12345'
- task: Docker@2
displayName: docker logout
inputs:
containerRegistry: 'docker-connection'
command: 'logout'
1条答案
按热度按时间bf1o4zei1#
我认为您应该在推送任务之前添加一个港口登录
这是从Chapatazars GitHub Repo中提取的
要了解有关管道脚本的更多知识:
Azure pipeline scripts
Crossplatform yml scripting
另一个正确的方法(我认为也是最简单的)是使用Azure发布管道(不需要yml文件)发布docker映像。在那里你可以使用构建过程的结果工件(这个构建来自你的yml管道)将映像推送到你需要的注册表。你可以看看官方文档:
Publish docker image from Azure pipelines