From a2225e583e50039b5e5cf4f1276f26a67859585d Mon Sep 17 00:00:00 2001 From: "Dustin C. Hatch" Date: Sat, 22 Jun 2024 19:47:03 -0500 Subject: [PATCH] paperless-ngx: Use volume claim template for redis Using a volume claim template to define the persistent volume claim for the Redis pod has two advantages: first, it enables using clustered Redis, if we decide that becomes necessary, and second, it makes deleteing and recreating the volume easier in the case of data corruption. Simply scale down the StatefulSet to 0, delete the PVC, and scale the StatefulSet back up. --- paperless-ngx/paperless-ngx.yaml | 39 ++++++++++++++------------------ 1 file changed, 17 insertions(+), 22 deletions(-) diff --git a/paperless-ngx/paperless-ngx.yaml b/paperless-ngx/paperless-ngx.yaml index 9cde03a..055cee5 100644 --- a/paperless-ngx/paperless-ngx.yaml +++ b/paperless-ngx/paperless-ngx.yaml @@ -22,24 +22,6 @@ data: exec /usr/local/bin/supervisord -c /etc/supervisord.conf --user paperless ---- -apiVersion: v1 -kind: PersistentVolumeClaim -metadata: - name: redis - namespace: paperless-ngx - labels: - app.kubernetes.io/name: redis - app.kubernetes.io/component: redis - app.kubernetes.io/instance: paperless-ngx - app.kubernetes.io/part-of: paperless-ngx -spec: - accessModes: - - ReadWriteOnce - resources: - requests: - storage: 2Gi - --- apiVersion: v1 kind: PersistentVolumeClaim @@ -180,7 +162,7 @@ spec: runAsUser: 1000 runAsGroup: 1000 volumeMounts: - - name: redisdata + - name: data mountPath: /data subPath: data - name: tmp @@ -188,11 +170,24 @@ spec: securityContext: fsGroup: 1000 volumes: - - name: redisdata - persistentVolumeClaim: - claimName: redis - name: tmp emptyDir: + volumeClaimTemplates: + - apiVersion: v1 + kind: PersistentVolumeClaim + metadata: + name: data + labels: + app.kubernetes.io/name: redis + app.kubernetes.io/component: redis + app.kubernetes.io/part-of: paperless-ngx + spec: + accessModes: + - ReadWriteOnce + resources: + requests: + storage: 2Gi + --- apiVersion: apps/v1