我按照此处的指南(授予 AKS 访问 ACR),但是当 Pod 尝试从 ACR 中提取图像时,我仍然得到“未经授权:需要身份验证”。
bash 脚本执行时没有任何错误。我曾尝试删除我的Deployment
并从头开始创建它kubectl apply -f ...
,但没有运气。
我想避免使用第二种使用秘密的方法。
我按照此处的指南(授予 AKS 访问 ACR),但是当 Pod 尝试从 ACR 中提取图像时,我仍然得到“未经授权:需要身份验证”。
bash 脚本执行时没有任何错误。我曾尝试删除我的Deployment
并从头开始创建它kubectl apply -f ...
,但没有运气。
我想避免使用第二种使用秘密的方法。
您在问题中发布的链接是从 Azure Kubernetes 服务使用 Azure 容器注册表进行身份验证的正确步骤。我以前试过,效果很好。
所以我建议你可以检查一下命令中的 service-principal-ID 和 service-principal-password 是否正确kubectl create secret docker-registry acr-auth --docker-server <acr-login-server> --docker-username <service-principal-ID> --docker-password <service-principal-password> --docker-email <email-address>
。并且您在 yaml 文件中设置的秘密也应该检查是否与您创建的秘密相同。
就我而言,我遇到了这个问题,因为我的时钟不同步。我在适用于 Linux 的 Windows 子系统上运行,因此运行sudo hwclock -s
解决了我的问题。
请参阅此 GitHub 线程以进行更长时间的讨论。