我正在尝试使用 Kubernetes 和 Traefik 在本地部署 SpringBoot 应用程序,并使用本地 url。我已经检查了 pod,日志也正常,看来应用程序正在等待我的呼叫。但是当我使用Postman打电话时:GET http://sge-api.local/points/12345/search我得到:502 Bad Gateway这是我的配置:服务:➜ sge git:(master) ✗ kubectl get service -n sgeNAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGEsge-api-local ClusterIP 10.109.84.138 <none> 8888/TCP 75m入口:➜ sge git:(master) ✗ kubectl get ingress -n sgeNAME HOSTS ADDRESS PORTS AGEmy-ingress sge-api.local 80 75m我的应用程序在 traefik 仪表板中也显示正常。我还有其他应用程序也在 .local url 中运行我还设置了一个127.0.0.1/etc/hosts条目sge-api.local这是我的入口:kind: IngressapiVersion: extensions/v1beta1metadata: name: sge-ingress namespace: sge annotations: kubernetes.io/ingress.class: traefikspec: rules: - host: sge-api.local http: paths: - backend: serviceName: sge-api-local servicePort: 8888我的服务:apiVersion: v1kind: Servicemetadata: labels: app: sge-api-local name: sge-api-local namespace: sgespec: ports: - name: "8888" port: 8888 targetPort: 8888 selector: app: sge-api-local我的部署:apiVersion: apps/v1kind: Deploymentmetadata: annotations: reloader.stakater.com/auto: "true" labels: app: sge-api-local name: sge-api-local namespace: sgespec: selector: matchLabels: app: sge-api-local replicas: 1 strategy: type: Recreate template: metadata: labels: app: sge-api-local spec: containers: - image: sge_api:local name: sge-api-local我应该做什么来调试这个?
1 回答
蝴蝶不菲
TA贡献1810条经验 获得超4个赞
你让 spring 应用程序在监听端口 8081 上运行,这是行不通的。
2019-10-25 14:53:39.002 INFO 1 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port(s): 8081 (https)
调整您的服务以使用目标端口 8081 而不是 8888
添加回答
举报
0/150
提交
取消