apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: adopt-a-street-ingress annotations: # Uncomment the appropriate ingress class for your cluster kubernetes.io/ingress.class: "haproxy" # For HAProxy Ingress # kubernetes.io/ingress.class: "nginx" # For NGINX Ingress # Uncomment if using cert-manager for TLS # cert-manager.io/cluster-issuer: "letsencrypt-prod" # Traefik specific annotations (uncomment if using Traefik) # traefik.ingress.kubernetes.io/router.entrypoints: web,websecure # traefik.ingress.kubernetes.io/router.middlewares: default-redirect-https@kubernetescrd spec: rules: - host: adopt-a-street.local # CHANGE THIS to your actual domain http: paths: # API endpoints - path: /api pathType: Prefix backend: service: name: adopt-a-street-backend port: number: 5000 # Socket.IO endpoints - path: /socket.io pathType: Prefix backend: service: name: adopt-a-street-backend port: number: 5000 # Frontend (must be last - catches all other paths) - path: / pathType: Prefix backend: service: name: adopt-a-street-frontend port: number: 80 # Uncomment for TLS/HTTPS # tls: # - hosts: # - adopt-a-street.local # secretName: adopt-a-street-tls