带有后缀的 Kubernetes Ingress 后端路径

Kubernetes Ingress backend path with postfix

我无法理解如何在 nginx 配置中实现这样的结果:

location /api/ {
  proxy_pass http://xyz:9000/api_server/;
}

但有入口。如果我理解正确 nginx.ingress.kubernetes.io/app-root 是重定向,而不是代理

每个入口规则已经作为 proxy_pass 指令工作。所以你可以在你的案例中使用 nginx.ingress.kubernetes.io/rewrite-target 注释:

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: my-ingress
  annotations:
    nginx.ingress.kubernetes.io/rewrite-target: /api_server/
spec:
  rules:
  - http:
      paths:
      - path: /api(/|$)(.*)
        pathType: Prefix
        backend:
          service:
            name: my-service-xyz
            port:
              number: 9000