apiVersion: helm.toolkit.fluxcd.io/v2 kind: HelmRelease metadata: name: joplin-postgres namespace: pim spec: interval: 10m chartRef: kind: OCIRepository name: joplin driftDetection: mode: enabled values: controllers: postgres: containers: app: image: repository: postgres # not alpine: the original docker instance ran the glibc-based # postgres:16 image (Debian). Its on-disk cluster was initdb'd # under glibc collation; reading it back with the musl-based # alpine image risks silent index corruption from differing # text collation order between the two libcs. # TODO: pin exact minor version once running (check via # `SELECT version();` or the resolved imageID) - original # compose.yaml only pinned the major version "16". tag: "16" env: TZ: Europe/Moscow POSTGRES_PASSWORD: valueFrom: secretKeyRef: name: joplin-secrets key: POSTGRES_PASSWORD service: app: controller: postgres ports: postgres: port: 5432 persistence: data: type: persistentVolumeClaim accessMode: ReadWriteOnce size: 20Gi storageClass: longhorn retain: true globalMounts: - path: /var/lib/postgresql/data subPath: data