gpt4 book ai didi

Azure Kubernetes 无法从 ACR 容器中提取镜像

转载 作者:行者123 更新时间:2023-12-03 03:40:00 26 4
gpt4 key购买 nike

我需要一些有关 Azure AKS 和 ACR 集成的帮助。我创建一个 ACR 容器并将该容器附加到 AKS 群集。我在创建 AKS 时启用托管身份,并且希望 ACR 也使用托管身份

这是我正在使用的脚本..

az group create --name $RESOURCEGROUP --location eastus
az acr create -n $REGISTRYNAME -g $RESOURCEGROUP --sku Basic
az aks create -n $CLUSTERNAME -g $RESOURCEGROUP --node-count $NODECOUNT --enable-addons monitoring --generate-ssh-keys --enable-managed-identity --attach-acr $REGISTRYNAME
az aks get-credentials -g $RESOURCEGROUP -n $CLUSTERNAME

在 AKS 上,当我获取 Pod 时,出现图像拉取错误

enter image description here

我看到 AKS 使用托管身份,ACR 使用主体 ID。如何解决这个问题

enter image description here

最佳答案

当我尝试使用您提供的相同 cmdlet 时,遇到类似的问题。

kubectl apply -f acr-nginx.yaml

您需要尝试设置 imagePullPolicy to Never它就成功了。

kubectl describe pod mypd , Kubectl试图拉取镜像,当然这个镜像不存在于远程服务器上,因此失败。

以上属性将避免连接到注册表,并将使用来自 docker 本地镜像缓存的图像。

用于使用 ACR 和 AKS

将图像导入您的 ACR通过运行以下命令将镜像从 docker hub 导入到 ACR 中:

az acr import  -n <acr-name> --source docker.io/library/nginx:latest --image nginx:v1

建议您遵循此Microsoft document将示例镜像从 ACR 部署到 AKS

spec:
containers:
- name: nginx
image: <acr-name>.azurecr.io/nginx:v1
imagePullPolicy: Never
ports:
- containerPort: 80

引用:Why am I getting an ErrImagePull error in this Kubernetes deployment?

关于Azure Kubernetes 无法从 ACR 容器中提取镜像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71668023/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com