Skip to content

Progressive Hints

Hint 1 (after 5 min)

The nginx-ingress log shows "Connection refused" when connecting to 10.244.3.18:8080. But look at the api-gateway application log — it says it is listening on port 3000, not 8080.

Hint 2 (after 10 min)

The Helm values show service.port: 8080 and service.targetPort: 3000. The Service object should forward traffic from 8080 to the container's port 3000. But look at the endpoints output — it shows 10.244.3.18:8080. If the endpoints are on port 8080, the Service's targetPort is set to 8080, not 3000. The Helm values define the desired state, but the actual Service may not match.

Hint 3 (after 15 min)

This is an API gateway behind an nginx ingress controller. The application listens on port 3000. The Helm values intend for the Service to proxy port 8080 to container port 3000, but the actual endpoints show port 8080 — meaning the Service's targetPort is 8080 in the deployed manifest, not 3000. The nginx ingress controller connects to the Service on port 8080, the Service routes to port 8080 on the pod, but the application is listening on 3000. Nobody is listening on 8080, so the connection is refused. Check whether the deployed Service spec matches the Helm values — there may be a template bug or the values were not applied.