【问题标题】:Ingress traefik to nginx到 nginx 的入口 traefik
【发布时间】:2021-08-26 07:56:14
【问题描述】:

我在将入口 traefik 注释“翻译”为入口 nginx 时遇到了一些问题

在 traefik 我有:

kind: Ingress
apiVersion: networking.k8s.io/v1beta1
metadata:
  name: ingressroutes-backend
  annotations:
    traefik.ingress.kubernetes.io/router.entrypoints: web
    traefik.ingress.kubernetes.io/router.middlewares: traefik-pathregex-rm-first-two-args@kubernetescrd
spec:
  rules:
    - host: {{.Values.ingress.host}}
      http:
        paths:
          - path: /api
            backend:
              serviceName: service-svc
              servicePort: 80

对于 nginx,我将它们翻译成:

kind: Ingress
apiVersion: networking.k8s.io/v1
metadata:
  name: ingressroutes-backend
  annotations:
    kubernetes.io/ingress.class: nginx
    ingress.kubernetes.io/ssl-redirect: "true"
    nginx.ingress.kubernetes.io/rewrite-target: /$1
    nginx.ingress.kubernetes.io/proxy-body-size: "0"
spec:
  rules:
  - host: {{.Values.ingress.host}}
        http:
            paths:
            - pathType: Prefix
                path: "/api"
                backend:
                    service:
                        name: service-svc
                        port:
                            number: 80

也许有人在这里可以告诉我这是否可行。

【问题讨论】:

    标签: nginx kubernetes-ingress traefik nginx-ingress traefik-ingress


    【解决方案1】:

    如果它仍然有趣:

    这是一个工作示例: 您的根域中有一个应用程序 / 以及您的/api-path 中的后端 API。

    apiVersion: networking.k8s.io/v1
    kind: Ingress
    metadata:
      name: yourapp-ingress
      namespace: default
      annotations:
        kubernetes.io/ingress.class: nginx
        nginx.ingress.kubernetes.io/rewrite-target: /$2
    spec:
      rules:
        - host: demo.your-domain.com
          http:
            paths:
              - path: /
                pathType: Prefix
                backend:
                  service:
                    name: frontend-app
                    port:
                      number: 80
              - path: /api(/|$)(.*)
                pathType: Prefix
                backend:
                  service:
                    name: backend-api
                    port:
                      number: 80
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-09-15
      • 1970-01-01
      • 2021-11-12
      • 1970-01-01
      • 2020-01-04
      • 2018-07-31
      • 1970-01-01
      相关资源
      最近更新 更多