--- apiVersion: v1 kind: Namespace metadata: name: paperless --- apiVersion: apps/v1 kind: Deployment metadata: name: paperless namespace: paperless spec: strategy: type: Recreate selector: matchLabels: app: paperless replicas: 1 template: metadata: labels: app: paperless spec: containers: - name: paperless image: ghcr.io/paperless-ngx/paperless-ngx:latest imagePullPolicy: Always ports: - containerPort: 8000 name: http-web-svc volumeMounts: - mountPath: "/usr/src/paperless/data" name: data subPath: data - mountPath: "/usr/src/paperless/media" name: data subPath: media - mountPath: "/usr/src/paperless/export" name: data subPath: export - mountPath: "/usr/src/paperless/consume" name: data subPath: consume env: - name: PAPERLESS_REDIS valueFrom: secretKeyRef: name: paperless-secret key: PAPERLESS_REDIS - name: PAPERLESS_DBHOST value: postgres-postgresql.postgres.svc.cluster.local - name: PAPERLESS_URL value: https://paperless.jibby.org - name: POSTGRES_DB value: paperless - name: PAPERLESS_DBUSER valueFrom: secretKeyRef: name: paperless-secret key: PAPERLESS_DBUSER - name: PAPERLESS_DBPASS valueFrom: secretKeyRef: name: paperless-secret key: PAPERLESS_DBPASS volumes: - name: data persistentVolumeClaim: claimName: paperless-pvc --- apiVersion: v1 kind: Service metadata: name: paperless-service namespace: paperless spec: selector: app: paperless type: ClusterIP ports: - name: paperless-web-port protocol: TCP port: 8000 targetPort: http-web-svc