繁体   English   中英

使用系统从 VM 分配的托管标识连接到 azure 容器注册表时出错

[英]Error connecting to azure container registry using system assigned managed identity from a VM

我无法从启用了系统分配托管标识的 VM 连接到 Azure 容器注册表。 MI 被分配了 ACR 上的 acrpush 角色。

我正在点击链接,在此处输入链接描述

az login --identity --> 有效

az acr login --name myContainerRegistry --> 失败并出现错误

An error occurred: DOCKER_COMMAND_ERROR
Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.24/containers/json: dial unix /var/run/docker.sock: connect: permission denied```

不确定为什么会出现上述错误。 docker 处于运行状态(活动),我使用service docker status命令检查了它。

但是当我第二天再次尝试az acr login命令时,它就像一个魅力。

登录后,我可以按照以下步骤使用托管身份将图像从 GitLab Runner VM 推送到 ACR。

标记图像的第 3 步很重要,如果没有标记,我们会收到需要身份验证的错误,即使托管身份被分配了 acrpush角色

1) az login --identity      
2) az acr login --name <mycontainerregistry>
3) docker image tag <image>:version mycontainerregistry.azurecr.io/<image:version>
4) docker push mycontainerregistry.azurecr.io/<image>:<version>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM