I have an application running on 1001. I deployed it to a container in port 80.
我如何使用Ingress?
我尝试使用带有--targetPort = 1001的NodePort,并在Ingress.yaml
中的servicePort中添加了80。
kubectl公开部署测试--target-port = 1001 --type = NodePort
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: test-ingress
spec:
backend:
serviceName: test
servicePort: 80
我收到错误
未找到后端 - 404
我使用正确的方法还是需要关注其他内容?
答案 0 :(得分:1)
使用来自https://github.com/kubernetes/charts/tree/master/stable/nginx-ingress的官方kubernetes图表仓库的helm设置nginx ingress。
与nginx入口控制器一起,您也需要入口资源。有关示例,请参阅https://github.com/nginxinc/kubernetes-ingress/tree/master/examples/complete-example。
答案 1 :(得分:0)
最后它对我有用。以下是我的发现
1)如果您使用GCE / GKE
,则不需要nginx控制器 2)PORTS:
如果您使用的是容器端口80
,则服务端口应为80
。
如果应用程序暴露给4000
,那么NodePort
--port=80
--targetPort=4000
3)如果你仍然在Ingress看到不健康的状态。在健康检查中检查您的路径,您可能没有指出所需的。
Ex:我必须指向/main.html in
的{{1}} Request Path