簡體   English   中英

使用 Az CLI 創建新的 Azure 容器實例時,無法從私有 Azure 容器注冊表中提取映像

[英]Can't pull image from private Azure Container Registry when using Az CLI to create a new Azure Container Instance

我已經創建了一個服務主體,具有對我的私有 Azure 容器注冊表的推送和拉取訪問權限。 使用以下命令推送到 ACR 工作得很好:

az login --service-principal -u "someSpID" -p "someSpSecret"  --tenant "someTenantID"
az acr login --name "someRegistry"
docker push "someRegistry.azurecr.io/my-image:0.0.1"

我還可以使用以下命令直接拉取圖像:

docker pull "someRegistry.azurecr.io/my-image:0.0.1"

我想將容器實例部署到私有子網中,並且我已經配置了網絡安全性以允許訪問我的所述子網。

但是,當我嘗試使用以下命令將容器實例部署到我的私有子網中時,我在其中指定了我之前登錄時使用的相同服務主體,我收到了錯誤響應。

az container create \
  --name myContainerGroup \
  --resource-group myResourceGroup \
  --image "someRegistry.azurecr.io/my-image:0.0.1" \
  --os-type Linux \
  --protocol TCP \
  --registry-login-server someRegistry.azurecr.io \
  --registry-password someSpSecret \
  --registry-username someSpID \
  --vnet someVNET \
  --subnet someSubnet \
  --location someLocation \
  --ip-address Private

錯誤:

urllib3.connectionpool : Starting new HTTPS connection (1): management.azure.com:443
urllib3.connectionpool : https://management.azure.com:443 "PUT /subscriptions/mySubscription/resourceGroups/myResourceGroup/providers/Microsoft.ContainerInstance/containerGroups/myContainerGroup?api-version=2018-10-01 HTTP/1.1" 400
msrest.http_logger : Response status: 400

The image 'someRegistry.azurecr.io/my-image:0.0.1' in container group 'myContainerGroup' is not accessible. Please check the image and registry credential.

當我嘗試通過 Azure 門戶部署容器實例時,會發生同樣的錯誤。

當我嘗試將公共映像部署到同一個子網時,它成功了,所以它不是部署權限問題,它似乎也不是錯誤的服務主體憑據,因為docker pull "someRegistry.azurecr.io/my-image:0.0.1"工作得很好。 我無法完全理解這種不一致的行為。 任何人的想法?

對於您的問題,這里有一個可能的原因來解釋您遇到的錯誤。 讓我們看看這里描述的限制:

只有 Azure Kubernetes 服務集群或 Azure 虛擬機可以作為主機訪問虛擬網絡中的容器注冊表。 目前不支持包括 Azure 容器實例在內的其他 Azure 服務。

此限制表明 Azure 容器注冊表的防火牆當前不支持 Azure 容器實例。 它僅支持在 Azure VM 或 AKS 群集中拉/推映像。

因此,您的解決方案是更改規則以允許所有網絡,然后重試。 或者使用 AKS 集群,但也會花費更多。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM