Statische PVs ueber csi-driver-smb (smb.csi.k8s.io), fest an die PVCs artista-modelcamp-media (App liest, uid 1001) und artista-modelcamp-db-backup (pg_dump-Job, uid 70, 0700/0600) gebunden, reclaimPolicy Retain. Zugang ueber Secret artista-modelcamp-smb. Das PostgreSQL-Datenverzeichnis bleibt bewusst auf Blockspeicher (SMB erfuellt dessen Sperr- und fsync-Anforderungen nicht, Briefing §13); die Datenbank landet ueber die taeglichen Dumps trotzdem auf dem NAS. Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
51 lines
1.7 KiB
YAML
51 lines
1.7 KiB
YAML
# Produktions-Overlay. Anpassen: Images/Tags, Domain, IngressClass,
|
|
# ClusterIssuer und TLS-Secret-Name. Anwenden:
|
|
# kubectl apply -k k8s/overlays/production
|
|
apiVersion: kustomize.config.k8s.io/v1beta1
|
|
kind: Kustomization
|
|
namespace: artista
|
|
resources:
|
|
- ../../base
|
|
- ingress.yaml
|
|
# Medien und Sicherungen auf SMB (PostgreSQL bewusst nicht, siehe Datei).
|
|
# Ohne SMB: diese Zeile und die beiden PVC-Patches unten entfernen.
|
|
- smb-volumes.yaml
|
|
|
|
images:
|
|
# Gebaut von .gitea/workflows/docker-build.yml: Git-Tag "v0.1.0" pushen
|
|
# ergibt Image-Tag "0.1.0" (Alternativen: "sha-<kurz>", "latest").
|
|
# Beide Images immer mit identischem Tag ausrollen.
|
|
- name: artista-modelcamp
|
|
newName: git.encry.de/nick.rosenloecher/artista-modelcamp
|
|
newTag: "0.1.0"
|
|
- name: artista-modelcamp-tools
|
|
newName: git.encry.de/nick.rosenloecher/artista-modelcamp-tools
|
|
newTag: "0.1.0"
|
|
|
|
patches:
|
|
# PVCs fest an die SMB-PersistentVolumes binden (statisch, ohne StorageClass).
|
|
- target: { kind: PersistentVolumeClaim, name: artista-modelcamp-media }
|
|
patch: |-
|
|
- op: add
|
|
path: /spec/storageClassName
|
|
value: ""
|
|
- op: add
|
|
path: /spec/volumeName
|
|
value: artista-modelcamp-media-smb
|
|
- target: { kind: PersistentVolumeClaim, name: artista-modelcamp-db-backup }
|
|
patch: |-
|
|
- op: add
|
|
path: /spec/storageClassName
|
|
value: ""
|
|
- op: add
|
|
path: /spec/volumeName
|
|
value: artista-modelcamp-db-backup-smb
|
|
- op: replace
|
|
path: /spec/accessModes
|
|
value: ["ReadWriteMany"]
|
|
- target: { kind: ConfigMap, name: artista-modelcamp-config }
|
|
patch: |-
|
|
- op: replace
|
|
path: /data/APP_URL
|
|
value: https://modelcamp.example.org
|