Вход в систему argocd завершается с ошибкой "получен неожиданный тип содержимого"
При попытке войти в систему с помощью интерфейса командной строки я получаю сообщение об ошибке
FATA[0004] rpc error: code = Internal desc = transport: received the unexpected content-type "text/plain; charset=utf-8"
Вот наша конфигурация Ingress:
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: argocd-server-ingress
namespace: argocd
annotations:
cert-manager.io/cluster-issuer: letsencrypt-prod
kubernetes.io/ingress.class: nginx
nginx.ingress.kubernetes.io/force-ssl-redirect: "true"
nginx.ingress.kubernetes.io/ssl-passthrough: "true"
nginx.ingress.kubernetes.io/backend-protocol: "HTTPS"
spec:
tls:
- hosts:
- argocd.foo.dev
secretName: argocd-foo-dev-tls
rules:
- host: argocd.foo.dev
http:
paths:
- backend:
serviceName: argocd-server
servicePort: https
path: /
Веб-интерфейс работает должным образом.
Я использую команду:
argocd login argocd.foo.dev
Чего не хватает?
2 ответа
Хотя я не на 100%, в чем причина вышеуказанной ошибки, используя --grpc-web
работает вокруг этого:
argocd login argocd.foo.dev --grpc-web
В документации указано, что этот флаг необходим, когда HTTP2 не поддерживается:
Включает протокол gRPC-web. Полезно, если сервер Argo CD находится за прокси-сервером, который не поддерживает HTTP2.
В нашем случае нашим контроллером входящего трафика является nginx, и он поддерживает http2.