我有一个服务在 NodePort 服务上运行。我如何使用入口访问多个服务。
部署.yml
apiVersion: apps/v1
kind: Deployment
metadata:
name: auth
spec:
replicas: 1
selector:
matchLabels:
app: auth
template:
metadata:
labels:
app: auth
tier: backend
track: dev
spec:
containers:
- name: auth
image: [url]/auth_app:v2
ports:
- name: auth
containerPort: 3000
服务.yml
apiVersion: v1
kind: Service
metadata:
name: auth
spec:
selector:
app: auth
tier: backend
ports:
- protocol: TCP
port: 3000
targetPort: auth
type: NodePort
入口.yml
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: test-ingress
spec:
backend:
serviceName: auth
servicePort: 8080
我从这个 repo 一步步跟着.我无法让它为我的端口配置工作。 我是初学者,想要一些相同的资源。
最佳答案
尝试这些 list 并记住部署一个 Ingress Controller(我通常使用 traefik,here 一些说明来设置它)
service.yml
:我把NodePort改成了ClusterIP(默认,可以去掉那一行)
apiVersion: v1
kind: Service
metadata:
name: auth
spec:
selector:
app: auth
tier: backend
ports:
- protocol: TCP
port: 3000
targetPort: auth
type: ClusterIP
ingress.yml
:(我设置端口为3000,你的服务端口)
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: test-ingress
spec:
backend:
serviceName: auth
servicePort: 3000
关于django - Ingress 和 Ingress controller 如何将它们与 NodePort 服务一起使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52345855/