【问题标题】:Getting 502 Bad Gateway (Nginx) while accessing Java application deployed on kubernetes pod访问部署在 kubernetes pod 上的 Java 应用程序时获取 502 Bad Gateway (Nginx)
【发布时间】:2021-07-26 20:36:34
【问题描述】:

我在访问 java 应用程序时收到 502 Badgateway(nginx)。我已经在 kubernetes 集群上以 pod 的形式部署了应用程序

deployment.yaml 文件

--
  apiVersion: "apps/v1"
  kind: "Deployment"
  metadata: 
    name: "app-development"
    namespace: "development"
  spec: 
    selector: 
      matchLabels: 
        app: "app-development"
    replicas: 1
    strategy: 
      type: "RollingUpdate"
      rollingUpdate: 
        maxSurge: 1
        maxUnavailable: 1
    minReadySeconds: 5
    template: 
      metadata: 
        labels: 
          app: "app-development"
      spec: 
        containers: 
          - 
            name: "app-development"
            image: "appimage:latest"
            imagePullPolicy: "Always"
            env: 
              - 
                name: "NODE_ENV"
                value: "development"
            ports: 
              - 
                containerPort: 40912
        imagePullSecrets: 
          - 
            name: "app-service"

ingress.yaml 文件

---
  apiVersion: "networking.k8s.io/v1beta1"
  kind: "Ingress"
  metadata: 
    name: "app-ingress"
    namespace: "app-development"
    annotations: 
      nginx.ingress.kubernetes.io/rewrite-target: "/"
  spec: 
    rules: 
      - 
        host: "localhost"
        http: 
          paths: 
            - 
              backend: 
                serviceName: "app-development"
                servicePort: 40912
              path: "/app-development"

service.yaml 文件

---
  apiVersion: "v1"
  kind: "Service"
  metadata: 
    name: "app-development"
    namespace: "app-development"
    labels: 
      app: "app-development"
  spec: 
    ports: 
      - 
        port: 40912
        targetPort: 8010
    selector: 
      app: "app-development"

码头文件

FROM openjdk:8-jdk-alpine
EXPOSE 8010
RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app
ADD . /usr/src/app
ADD target/app.jar /usr/src/app
ENTRYPOINT ["java","-jar","/usr/src/app/app.jar"]

从入口路径 url 访问我的应用程序时,我得到 502 Badgateway(nginx),我尝试做 curl,但从那里我也得到了错误的网关,并知道如何解决这个问题。

【问题讨论】:

  • 您的 Service 指向端口 8010,但您的 PodSpec 有 containerPort: 40912 所以我猜这只是一个错字
  • 嘿,谢谢你的回复,问题解决了,我在 application.properties 文件(代码文件)中给出了一些不同的端口号,它是 8080(server.port=8080) 而不是8010,所以我在 service.yaml 文件中将目标端口更改为 8080

标签: java docker nginx kubernetes bad-gateway


【解决方案1】:

在我的 application.properties 文件(代码文件)中,端口是 8080(server.port 值),但在我的目标端口中,service.yaml 文件中的端口是 8010,所以我在我的service.yaml 文件和问题已解决。

【讨论】:

    猜你喜欢
    • 2020-06-19
    • 1970-01-01
    • 2019-10-17
    • 2015-07-25
    • 2020-12-14
    • 2013-07-16
    • 2018-08-22
    • 2017-05-10
    • 2021-05-31
    相关资源
    最近更新 更多