# Harbor's chart has no multi-host mechanism at all (checked against the # actual template — no extraHosts like argo-cd, no secondaryingress like # jenkins), so this is a standalone second Ingress for the Tailscale # hostname. Correction from an earlier version of this file: it routed # everything to harbor-core alone. That's wrong — harbor-core is the # API/auth backend; the actual web UI (the portal you log into) is served # by harbor-portal. Mirrors the chart's own generated Ingress path split # exactly (confirmed against its real rendered spec, not assumed this # time): /api/, /service/, /v2/, /c/ go to harbor-core, everything else # goes to harbor-portal. apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: harbor-ingress-tailscale namespace: harbor spec: ingressClassName: contour rules: - host: "harbor.100.90.248.118.nip.io" http: paths: - path: /api/ pathType: Prefix backend: service: name: harbor-core port: number: 80 - path: /service/ pathType: Prefix backend: service: name: harbor-core port: number: 80 - path: /v2/ pathType: Prefix backend: service: name: harbor-core port: number: 80 - path: /c/ pathType: Prefix backend: service: name: harbor-core port: number: 80 - path: / pathType: Prefix backend: service: name: harbor-portal port: number: 80