214b617be0
Use seeded abrban/ images instead of flaky proxy-gcr pulls, fix Kaniko dockerfile path for v1.27, correct docker auth host keys, route /v2/abrban/ through harbor-core, and prefer abrban/ for base images. Co-authored-by: Cursor <cursoragent@cursor.com>
125 lines
3.5 KiB
YAML
125 lines
3.5 KiB
YAML
# registry.abrban.com — Traefik path split
|
|
#
|
|
# Proxy-cache projects (proxy-dockerhub, proxy-gcr, …) MUST hit harbor-core so
|
|
# Harbor can pull upstream on demand. harbor-registry only stores blobs; it does
|
|
# not run proxy-cache logic → 404 for uncached proxy paths.
|
|
#
|
|
# Direct pushes (abrban/, rook/) stay on harbor-registry where Kaniko/skopeo
|
|
# wrote the blobs.
|
|
#
|
|
# Apply: kubectl apply -f gitops/harbor/registry-ingress.yaml
|
|
|
|
apiVersion: networking.k8s.io/v1
|
|
kind: Ingress
|
|
metadata:
|
|
name: registry
|
|
namespace: cloudhost
|
|
annotations:
|
|
traefik.ingress.kubernetes.io/router.entrypoints: websecure
|
|
traefik.ingress.kubernetes.io/router.middlewares: cloudhost-long-timeout@kubernetescrd
|
|
spec:
|
|
ingressClassName: traefik
|
|
tls:
|
|
- hosts:
|
|
- registry.abrban.com
|
|
secretName: abrban-wildcard-tls
|
|
rules:
|
|
- host: registry.abrban.com
|
|
http:
|
|
paths:
|
|
# ── Proxy-cache (harbor-core serves v2 + on-demand upstream pull) ──
|
|
- path: /v2/proxy-dockerhub/
|
|
pathType: Prefix
|
|
backend:
|
|
service:
|
|
name: harbor-core
|
|
port:
|
|
number: 80
|
|
- path: /v2/proxy-gcr/
|
|
pathType: Prefix
|
|
backend:
|
|
service:
|
|
name: harbor-core
|
|
port:
|
|
number: 80
|
|
- path: /v2/proxy-quay/
|
|
pathType: Prefix
|
|
backend:
|
|
service:
|
|
name: harbor-core
|
|
port:
|
|
number: 80
|
|
- path: /v2/proxy-k8s/
|
|
pathType: Prefix
|
|
backend:
|
|
service:
|
|
name: harbor-core
|
|
port:
|
|
number: 80
|
|
- path: /v2/proxy-gitea/
|
|
pathType: Prefix
|
|
backend:
|
|
service:
|
|
name: harbor-core
|
|
port:
|
|
number: 80
|
|
# ── abrban/rook project images (served by harbor-core; required for k3s mirror pulls) ──
|
|
- path: /v2/abrban/
|
|
pathType: Prefix
|
|
backend:
|
|
service:
|
|
name: harbor-core
|
|
port:
|
|
number: 80
|
|
- path: /v2/rook/
|
|
pathType: Prefix
|
|
backend:
|
|
service:
|
|
name: harbor-core
|
|
port:
|
|
number: 80
|
|
# ── Legacy registry (platform images pre-Harbor) ──
|
|
- path: /v2/
|
|
pathType: Prefix
|
|
backend:
|
|
service:
|
|
name: registry
|
|
port:
|
|
number: 5000
|
|
# ── Harbor UI / API ──
|
|
- 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: /c/
|
|
pathType: Prefix
|
|
backend:
|
|
service:
|
|
name: harbor-core
|
|
port:
|
|
number: 80
|
|
- path: /chartrepo/
|
|
pathType: Prefix
|
|
backend:
|
|
service:
|
|
name: harbor-core
|
|
port:
|
|
number: 80
|
|
- path: /
|
|
pathType: Prefix
|
|
backend:
|
|
service:
|
|
name: harbor-portal
|
|
port:
|
|
number: 80
|