There is currently a bug with ingress-nginx on Digital Ocean. You can read more about this bug here: https://github.com/digitalocean/digitalocean-cloud-controller-manager/blob/master/docs/controllers/services/examples/README.md#accessing-pods-over-a-managed-load-balancer-from-inside-the-cluster
To fix it, add the following to the bottom of your ingress-srv.yaml file.
Also, update the URL on this line to the domain name you're using: service.beta.kubernetes.io/do-loadbalancer-hostname: 'www.ticketing-app-prod.xyz'
---
apiVersion: v1
kind: Service
metadata:
annotations:
service.beta.kubernetes.io/do-loadbalancer-enable-proxy-protocol: 'true'
service.beta.kubernetes.io/do-loadbalancer-hostname: 'www.ticketing-app-prod.xyz'
labels:
helm.sh/chart: ingress-nginx-2.0.3
app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/instance: ingress-nginx
app.kubernetes.io/version: 0.32.0
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/component: controller
name: ingress-nginx-controller
namespace: ingress-nginx
spec:
type: LoadBalancer
externalTrafficPolicy: Local
ports:
- name: http
port: 80
protocol: TCP
targetPort: http
- name: https
port: 443
protocol: TCP
targetPort: https
selector:
app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/instance: ingress-nginx
app.kubernetes.io/component: controllerIn addition, related to this bug, you also need to make an update to the client's 'build-client.js' file. Change the baseURL for the server client from:
baseURL: 'http://ingress-nginx-controller.ingress-nginx.svc.cluster.local'
to:
baseURL: 'Whatever_your_purchased_domain_is'
So for me, I purchased ticketing-app-prod.xyz, so I would update this line to:
baseURL: 'http://www.ticketing-app-prod.xyz/'