将 docker 图像从 Azure DevOps 管道推送到 Docker Hub
Pushing docker image to Docker Hub from Azure DevOps pipeline
我有一个带有 Docker 文件的 .Net 核心 Web 应用程序。
我正在使用 Azure DevOps 管道构建 docker 图像,并希望将该图像推送到 Docker Hub。
但是当我 运行 管道时,它在推送图像时失败并出现以下错误:
2019-07-25T07:40:39.2332684Z ##[section]Starting: Push an image
2019-07-25T07:40:39.2340807Z ==============================================================================
2019-07-25T07:40:39.2340932Z Task : Docker
2019-07-25T07:40:39.2341017Z Description : Build, tag, push, or run Docker images, or run a Docker command
2019-07-25T07:40:39.2341132Z Version : 0.154.1
2019-07-25T07:40:39.2341206Z Author : Microsoft Corporation
2019-07-25T07:40:39.2341308Z Help : https://docs.microsoft.com/azure/devops/pipelines/tasks/build/docker
2019-07-25T07:40:39.2341405Z ==============================================================================
2019-07-25T07:40:39.4058071Z e6868ba4-0951-4724-b13b-58e178dacb79 exists true
2019-07-25T07:40:39.5494209Z [command]/usr/bin/docker push dockerDemo2019:19
2019-07-25T07:40:39.5780069Z The push refers to repository [docker.io/library/dockerDemo2019]
2019-07-25T07:40:40.5429692Z b0f339cf7b16: Preparing
2019-07-25T07:40:40.5430778Z a385a9a129e2: Preparing
2019-07-25T07:40:40.5431098Z 6339615de93e: Preparing
2019-07-25T07:40:40.5431279Z c6c9de941dfa: Preparing
2019-07-25T07:40:40.5431433Z 9c894eb0930b: Preparing
2019-07-25T07:40:40.5431696Z d56055da3352: Preparing
2019-07-25T07:40:40.5431855Z d56055da3352: Waiting
2019-07-25T07:40:42.4737943Z denied: requested access to the resource is denied
2019-07-25T07:40:42.4880225Z ##[error]denied: requested access to the resource is denied
2019-07-25T07:40:42.4932585Z ##[error]/usr/bin/docker failed with return code: 1
2019-07-25T07:40:42.4960825Z ##[section]Finishing: Push an image
我的管道设置:
我已经验证了 Docker 注册服务连接,它与 docker 集线器凭据连接。
您需要将 Docker 任务版本从 0.*
切换到 2.*
。
然后您还需要定义您的 Docker 集线器存储库名称:
您需要在 build
步骤中做同样的事情 - 切换到 2.*
并定义存储库名称。
顺便说一下 - 在 2.*
版本中,操作名称是 buildAndPush
,它结合了构建和推送任务。
我的服务连接是我的问题所在。我把它搞砸了,因为默认是“其他”。
将注册表类型设置为 DockerHub 并随后设置凭据后,它工作正常。
当然 [![https://whosebug.com/users/7409220/shayki-abramczyk] 建议的步骤也很重要。
我有一个带有 Docker 文件的 .Net 核心 Web 应用程序。
我正在使用 Azure DevOps 管道构建 docker 图像,并希望将该图像推送到 Docker Hub。
但是当我 运行 管道时,它在推送图像时失败并出现以下错误:
2019-07-25T07:40:39.2332684Z ##[section]Starting: Push an image
2019-07-25T07:40:39.2340807Z ==============================================================================
2019-07-25T07:40:39.2340932Z Task : Docker
2019-07-25T07:40:39.2341017Z Description : Build, tag, push, or run Docker images, or run a Docker command
2019-07-25T07:40:39.2341132Z Version : 0.154.1
2019-07-25T07:40:39.2341206Z Author : Microsoft Corporation
2019-07-25T07:40:39.2341308Z Help : https://docs.microsoft.com/azure/devops/pipelines/tasks/build/docker
2019-07-25T07:40:39.2341405Z ==============================================================================
2019-07-25T07:40:39.4058071Z e6868ba4-0951-4724-b13b-58e178dacb79 exists true
2019-07-25T07:40:39.5494209Z [command]/usr/bin/docker push dockerDemo2019:19
2019-07-25T07:40:39.5780069Z The push refers to repository [docker.io/library/dockerDemo2019]
2019-07-25T07:40:40.5429692Z b0f339cf7b16: Preparing
2019-07-25T07:40:40.5430778Z a385a9a129e2: Preparing
2019-07-25T07:40:40.5431098Z 6339615de93e: Preparing
2019-07-25T07:40:40.5431279Z c6c9de941dfa: Preparing
2019-07-25T07:40:40.5431433Z 9c894eb0930b: Preparing
2019-07-25T07:40:40.5431696Z d56055da3352: Preparing
2019-07-25T07:40:40.5431855Z d56055da3352: Waiting
2019-07-25T07:40:42.4737943Z denied: requested access to the resource is denied
2019-07-25T07:40:42.4880225Z ##[error]denied: requested access to the resource is denied
2019-07-25T07:40:42.4932585Z ##[error]/usr/bin/docker failed with return code: 1
2019-07-25T07:40:42.4960825Z ##[section]Finishing: Push an image
我的管道设置:
我已经验证了 Docker 注册服务连接,它与 docker 集线器凭据连接。
您需要将 Docker 任务版本从 0.*
切换到 2.*
。
然后您还需要定义您的 Docker 集线器存储库名称:
您需要在 build
步骤中做同样的事情 - 切换到 2.*
并定义存储库名称。
顺便说一下 - 在 2.*
版本中,操作名称是 buildAndPush
,它结合了构建和推送任务。
我的服务连接是我的问题所在。我把它搞砸了,因为默认是“其他”。
将注册表类型设置为 DockerHub 并随后设置凭据后,它工作正常。
当然 [![https://whosebug.com/users/7409220/shayki-abramczyk] 建议的步骤也很重要。