- 下载yaml资源清单
- 编辑yaml资源清单
- apply资源清单
- 查看ingress
- 创建应用
- 创建一个ingress
- 通过命令行创建yaml
- 资源清单内容
- apply这个ingress
- 本地修改hosts绑定对应域名
项目地址: https://kubernetes.github.io/ingress-nginx/deploy/#quick-start
wget https://ghproxy.com/https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v1.1.0/deploy/static/provider/cloud/deploy.yaml
编辑yaml资源清单
在services中添加http和http的NodePort,默认是随机端口 type修改为NodePort http的端口修改为30080 https的端口修改为30443
apply资源清单
kubectl apply -f deploy.yaml
查看ingress
kubectl get ingress -A
创建应用
# 创建一个deployment kubectl create deployment edu --image=nginx # 创建一个svc kubectl expose deployment edu --port=80 --target-port=80
创建一个ingress
通过命令行创建yaml
kubectl create ingress edu --rule=web.aliangedu.cn/=edu:80 --dry-run=client -o yaml > ing.yaml
资源清单内容
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: edu
annotations:
# 指定下ingress控制器,不然域名访问不了
kubernetes.io/ingress.class: "nginx"
spec:
rules:
- host: web.aliangedu.cn
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: edu
port:
number: 80
# 通过命令行创建ingress(命令创建的域名无法访问,未解决)
kubectl create ingress edu --rule=web.aliangedu.cn/=edu:80
apply这个ingress
kubectl apply -f ing.yaml # 查看ingress kubectl get ingress
本地修改hosts绑定对应域名
!!!注意:
# 查看Ingress Controler Pod所在node kubectl get po -A -owide|grep ingress-nginx-controller kubectl get pods,svc -owide -n ingress-nginx



