Files
infrastructure/clusters/cl01tl/helm/postiz/values.yaml
Alex Lebens d5205adaf5
All checks were successful
lint-test-helm / lint-helm (push) Successful in 12s
render-manifests-push / render-manifests-push (push) Successful in 52s
renovate / renovate (push) Successful in 1m2s
update chart
2025-12-23 23:03:52 -06:00

184 lines
5.3 KiB
YAML

postiz:
controllers:
main:
type: deployment
replicas: 1
strategy: Recreate
revisionHistoryLimit: 3
containers:
main:
image:
repository: ghcr.io/gitroomhq/postiz-app
tag: v2.10.1
pullPolicy: IfNotPresent
env:
- name: MAIN_URL
value: https://postiz.alexlebens.dev
- name: FRONTEND_URL
value: https://postiz.alexlebens.dev
- name: NEXT_PUBLIC_BACKEND_URL
value: https://postiz.alexlebens.dev/api
- name: JWT_SECRET
valueFrom:
secretKeyRef:
name: postiz-config-secret
key: JWT_SECRET
- name: DATABASE_URL
valueFrom:
secretKeyRef:
name: postiz-postgresql-18-cluster-app
key: uri
- name: REDIS_URL
valueFrom:
secretKeyRef:
name: postiz-redis-config
key: REDIS_URL
- name: BACKEND_INTERNAL_URL
value: http://localhost:3000
- name: IS_GENERAL
value: "true"
- name: STORAGE_PROVIDER
value: local
- name: UPLOAD_DIRECTORY
value: /uploads
- name: NEXT_PUBLIC_UPLOAD_DIRECTORY
value: /uploads
- name: NEXT_PUBLIC_POSTIZ_OAUTH_DISPLAY_NAME
value: Authentik
- name: NEXT_PUBLIC_POSTIZ_OAUTH_LOGO_URL
value: https://cdn.jsdelivr.net/gh/selfhst/icons/png/authentik.png
- name: POSTIZ_GENERIC_OAUTH
value: "true"
- name: POSTIZ_OAUTH_URL
value: https://auth.alexlebens.dev
- name: POSTIZ_OAUTH_AUTH_URL
value: https://auth.alexlebens.dev/application/o/authorize/
- name: POSTIZ_OAUTH_TOKEN_URL
value: https://auth.alexlebens.dev/application/o/token/
- name: POSTIZ_OAUTH_USERINFO_URL
value: https://auth.alexlebens.dev/application/o/userinfo/
- name: POSTIZ_OAUTH_CLIENT_ID
valueFrom:
secretKeyRef:
name: postiz-oidc-secret
key: client
- name: POSTIZ_OAUTH_CLIENT_SECRET
valueFrom:
secretKeyRef:
name: postiz-oidc-secret
key: secret
- name: POSTIZ_OAUTH_SCOPE
value: openid profile email
resources:
requests:
cpu: 10m
memory: 128Mi
service:
main:
controller: main
ports:
http:
port: 80
targetPort: 5000
protocol: HTTP
route:
main:
kind: HTTPRoute
parentRefs:
- group: gateway.networking.k8s.io
kind: Gateway
name: traefik-gateway
namespace: traefik
hostnames:
- postiz.alexlebens.net
rules:
- backendRefs:
- group: ''
kind: Service
name: postiz
port: 80
weight: 100
matches:
- path:
type: PathPrefix
value: /
persistence:
config:
forceRename: postiz-config
storageClass: ceph-block
accessMode: ReadWriteOnce
size: 2Gi
retain: true
advancedMounts:
main:
main:
- path: /config
readOnly: false
uploads:
forceRename: postiz-uploads
storageClass: ceph-block
accessMode: ReadWriteOnce
size: 10Gi
retain: true
advancedMounts:
main:
main:
- path: /uploads
readOnly: false
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
redis-replication:
existingSecret:
enabled: true
name: postiz-redis-config
key: password
redisReplication:
clusterSize: 3
redisSentinel:
enabled: true
clusterSize: 3
volsync-target-config:
pvcTarget: postiz-config
volsync-target-upload:
pvcTarget: postiz-uploads