在尝试docker login使用 Active Directory 凭据通过命令登录 Azure 容器注册表时,我遇到了以下问题:
Error response from daemon: Get https://myregistry.azurecr.io/v2/: unauthorized: authentication required
很明显,权限存在问题,但我找不到达到目标的正确方法。
请注意:
az acr login --name myregistry工作得很好,之后我可以上传我的图像,但由于特定情况,我需要一个docker login带有 AD 凭据的命令和身份验证解决方案。
我尝试使用以下文档向用户提供所需的权限 acrpull/acrpush/acrdelete:
https://docs.microsoft.com/en-us/azure/container-registry/container-registry-auth-service-principal
但没有运气 - 相同的输出。
有什么方法可以使用 AD 凭据登录 ACRdocker login吗?
让我描述一下我今天遇到的情况:
该应用程序的清单中没有任何具体内容,这是在 80 端口上提供服务的简单部署。
我已经使用 helm 包配置了 Ingress 并安装了 helm 存储库中的常用包: stable/nginx-ingress 。安装后 - 我已经开始配置 Ingress。
在我的 yaml 下面:
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: app-ingress
annotations:
kubernetes.io/ingress.class: nginx
nginx.ingress.kubernetes.io/ssl-redirect: "false"
nginx.ingress.kubernetes.io/rewrite-target: /$1
spec:
rules:
- http:
paths:
- backend:
serviceName: ui-service
servicePort: 80
path: /(.*)
- backend:
serviceName: ui-service
servicePort: 80
path: /test-service/ui(/|$)(.*)
Run Code Online (Sandbox Code Playgroud)
好的,我正在尝试打开页面:http://1.2.3.4/ - 一切正常,我看到网页将我重定向到:
http://1.2.3.4/page1,如果我点击了某些内容 - http://1.2.3.4/page2 等。
但是,当我尝试使用以下命令打开同一个 Web 应用程序时:
http://1.2.3.4/test-service/ui,我在控制台中收到空白页面和错误:
Resource interpreted as Stylesheet but transferred …Run Code Online (Sandbox Code Playgroud)