我正在尝试将我的.net核心web应用程序放到k8s中。
我有两个前端应用程序,即:
。
在Docker中部署时,这两个服务都使用不同的端口运行,并使用Nginx反向代理,这两个服务都包含根路径等。
server {
listen 44343
location /
{redirect to Auth Service}
}
server {
listen 44345
location /
{redirect to Web Service}
}但在k8s,我似乎不能这样做。因此,任何善良的灵魂指引我,什么是正确的设置入口或尼克斯?
发布于 2022-07-26 16:26:16
您可以为每个端口和一个入口创建两个服务:
authsvc.yaml
apiVersion: v1
kind: Service
metadata:
name: auth-service
spec:
type: NodePort
selector:
component: web
ports:
- port: 44343
targetPort: x (i guess this could be your port 80/443 because is the "entry")webservicesvc.yaml
apiVersion: v1
kind: Service
metadata:
name: web-service
spec:
type: NodePort
selector:
component: web
ports:
- port: 44345
targetPort: xingress.yaml
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: ingress
annotations:
nginx.ingress.kubernetes.io/rewrite-target: /
spec:
rules:
- http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: auth-service
port:
number: 44343
- path: /
pathType: Prefix
backend:
service:
name: web-service
port:
number: 44345/意味着所有路径也可以有不同的入口类型,如TLS。看看:https://www.yogihosting.com/kubernetes-ingress-aspnet-core/
https://stackoverflow.com/questions/73126118
复制相似问题