繁体   English   中英

Kubernetes + ingress-nginx - 两个app,其中一个在/path

[英]Kubernetes + ingress-nginx - two apps, one of which in / path

我在 Kubernetes 集群上有两个需要公开的应用程序。 一个是基于 OAuth2 的身份验证器,另一个是使用它的客户端应用程序。 我想在 test.mydomain.com 上有客户端应用程序,在test.mydomain.com上有验证test.mydomain.com/auth

我尝试在 Kubernetes 中构建以下入口:

apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
  name: my-ingress
  namespace: default
  annotations:
    kubernetes.io/ingress.class: nginx
    nginx.ingress.kubernetes.io/backend-protocol: "HTTP"
    nginx.ingress.kubernetes.io/proxy-body-size: "20m"
spec:
  rules:
    - http:
        paths:
        - path: /auth
          backend:
            serviceName: authenticator-service
            servicePort: 8080
        - path: /
          backend:
            serviceName: app-service
            servicePort: 8080

出于某种原因,我无法让它工作,每当我尝试点击test.mydomain.com/auth时,我最终都会点击主app-service 我做错了什么吗? 我想做的甚至可能吗?

尝试这个 -

apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
  annotations:
    nginx.ingress.kubernetes.io/rewrite-target: /$1
    kubernetes.io/ingress.class: nginx
  name: my-ingress
spec:
  rules:
  - host: test.mydomain.com
    http:
      paths:
      - path: /(.*)
        backend:
          serviceName: app-service
          servicePort: 8080
      - path: /auth/(.*)
        backend: 
          serviceName: authenticator-service
          servicePort: 8080

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM