photoview: controllers: main: type: deployment replicas: 1 strategy: Recreate revisionHistoryLimit: 3 initContainers: init-chmod-data: securityContext: runAsUser: 0 image: repository: busybox tag: 1.37.0 pullPolicy: IfNotPresent command: - /bin/sh - -ec - | /bin/chown -R 999:999 /app/cache resources: requests: cpu: 100m memory: 128Mi containers: main: image: repository: photoview/photoview tag: 2.4.0 pullPolicy: IfNotPresent env: - name: PHOTOVIEW_DATABASE_DRIVER value: postgres - name: PHOTOVIEW_POSTGRES_URL valueFrom: secretKeyRef: name: photoview-postgresql-18-cluster-app key: uri - name: PHOTOVIEW_MEDIA_CACHE value: /app/cache resources: requests: cpu: 10m memory: 512Mi service: main: controller: main ports: http: port: 80 targetPort: 80 protocol: HTTP route: main: kind: HTTPRoute parentRefs: - group: gateway.networking.k8s.io kind: Gateway name: traefik-gateway namespace: traefik hostnames: - photoview.alexlebens.net rules: - backendRefs: - group: '' kind: Service name: photoview port: 80 weight: 100 matches: - path: type: PathPrefix value: / persistence: cache: forceRename: photoview-cache storageClass: ceph-block accessMode: ReadWriteOnce size: 10Gi retain: false advancedMounts: main: init-chmod-data: - path: /app/cache readOnly: false main: - path: /app/cache readOnly: false media: existingClaim: photoview-nfs-storage advancedMounts: main: main: - path: /photos readOnly: true postgres-18-cluster: mode: recovery recovery: method: objectStore objectStore: index: 1 backup: objectStore: - name: garage-local index: 1 destinationBucket: postgres-backups externalSecretCredentialPath: /garage/home-infra/postgres-backups isWALArchiver: true # - name: garage-remote # index: 1 # destinationBucket: postgres-backups # externalSecretCredentialPath: /garage/home-infra/postgres-backups # retentionPolicy: "90d" # data: # compression: bzip2 # - name: external # index: 1 # endpointURL: https://nyc3.digitaloceanspaces.com # destinationBucket: postgres-backups-ce540ddf106d186bbddca68a # externalSecretCredentialPath: /garage/home-infra/postgres-backups # isWALArchiver: false scheduledBackups: - name: live-backup suspend: false immediate: true schedule: "0 0 0 * * *" backupName: garage-local # - name: weekly-backup # suspend: true # immediate: true # schedule: "0 0 4 * * SAT" # backupName: garage-remote # - name: daily-backup # suspend: true # immediate: true # schedule: "0 0 0 * * *" # backupName: external