【发布时间】:2020-03-10 22:23:41
【问题描述】:
我有一个 Kubernetes 集群,其中包含两个提供 Web 前端的应用程序,我想让它们都可以通过 NGINX 入口控制器访问。这是我的 ingress.yaml 的相关部分:
tls:
- hosts:
- myapp.com
secretName: my-certificate
rules:
- host: myapp.com
http:
paths:
- backend:
serviceName: myapp2-service
servicePort: 12345
path: /myapp2/(.*)
- backend:
serviceName: myapp1-service
servicePort: 80
path: /(.*)
通过此设置,我可以通过 URL myapp.com 访问 myapp1 的前端。当我将其更改为
paths:
- backend:
serviceName: myapp2-service
servicePort: 12345
path: /(.*)
- backend:
serviceName: myapp1-service
servicePort: 80
path: /(.*)
我可以通过 URL myapp.com 到达 myapp2 的前端。
我想要实现的是我可以通过myapp.com和前端myapp.com/myapp2到达myapp1的前端。那可能吗?如果是这样,我的错误在哪里?正如我所说,myapp2 的前端基本上是可以访问的,只是不能通过子 URL。
【问题讨论】:
-
你试过删除(.*)吗?
-
您可以通过
myapp.com/myapp2/访问吗?注意最后的/。myapp.com/myapp2与您配置的路径不匹配。
标签: docker kubernetes frontend