- Image-Digests von backend, frontend und postgres sind die live laufenden; whisper bekommt seinen ersten CI-Digest. Die neuen CI-Digests für Schritt 3 stehen als Kommentar. - Ingress-Hosts und TLS: apicore.encry.de, apicorebackend.encry.de. - kubectl diff ohne Components zeigt nur Rollout-Strategie und startupProbe am Backend, den Digest-Pin für postgres (ein Neustart) und drei neue VOICE_*-Werte in der Backend-ConfigMap. Refs #28 Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
31 lines
1.1 KiB
YAML
31 lines
1.1 KiB
YAML
apiVersion: networking.k8s.io/v1
|
|
kind: Ingress
|
|
metadata:
|
|
name: apicore-frontend
|
|
annotations:
|
|
# Requires cert-manager with a ClusterIssuer named "letsencrypt-prod"
|
|
# (or swap for whatever issuer/cert mechanism the cluster already uses).
|
|
cert-manager.io/cluster-issuer: letsencrypt-prod
|
|
# Nur Traffic ueber Cloudflare zulassen. Die Middleware liegt im Repo
|
|
# rke2-cluster (security/cloudflare-only-middlewares.yaml). Sie schuetzt vor
|
|
# Direktzugriff am Origin vorbei, nicht vor fremden Cloudflare-Zonen.
|
|
traefik.ingress.kubernetes.io/router.middlewares: apicore-cloudflare-only@kubernetescrd
|
|
spec:
|
|
# Der Cluster (RKE2) nutzt Traefik; nur damit wirkt die Middleware-Annotation oben.
|
|
ingressClassName: traefik
|
|
tls:
|
|
- hosts:
|
|
- apicore.encry.de
|
|
secretName: apicore-frontend-tls
|
|
rules:
|
|
- host: apicore.encry.de
|
|
http:
|
|
paths:
|
|
- path: /
|
|
pathType: Prefix
|
|
backend:
|
|
service:
|
|
name: apicore-frontend
|
|
port:
|
|
number: 80
|