我正在尝试从Azure DevOps服务将Docker容器部署到Azure应用程序服务。我已将Docker映像推送到Azure容器注册表。当我尝试创建发布定义时,我无法找到Azure容器注册表的服务连接。我已经为ACR创建了服务连接,但在Azure DevOps门户中没有显示出来。
当我选择“Azure容器仓库”作为源类型时,服务连接在下拉框中不可见。我使用DockerHub作为另一个选项。它在列表中显示服务连接。我遵循的步骤来创建ACR的服务连接:
- 从列表中选择Docker Registry。
- 选择Azure Container Registry作为注册表类型。提供订阅ID和来自ACR的注册表。
- 提供服务连接名称并保存。
我已经使用托管标识身份验证为Azure资源管理器创建了服务连接,提供了订阅ID和租户ID。我正在尝试在Artifact设置中使用此连接。我收到以下错误信息。 找不到名称为endpoint.serviceprincipalid的变量,适用于给定的服务连接。更新
无法从ACR拉取docker镜像。应用服务的日志显示拒绝访问仓库。
服务连接问题已解决,但从应用服务面临docker权限问题
2020-02-10 12:31:11.781 INFO - Pulling image from Docker hub:
kbdockerregis/kbdockerimage:15
2020-02-10 12:31:14.406 ERROR - DockerApiException: Docker API responded with
status code=NotFound, response={"message":"pull access denied for
kbdockerregis/kbdockerimage, repository does not exist or may require 'docker
login': denied: requested access to the resource is denied"}
2020-02-10 12:31:14.408 ERROR - Image pull failed: Verify docker image
configuration and credentials (if using private repository)
2020-02-10 12:31:14.412 INFO - Stoping site kbapp1 because it failed during
startup.