reworking default namespace

This commit is contained in:
2026-08-28 19:44:21 -03:00
parent 8debf442ce
commit f1a8cf7ec4
14 changed files with 1131 additions and 1546 deletions
+115 -122
View File
@@ -1,3 +1,5 @@
---
# 1) Deployment
apiVersion: apps/v1
kind: Deployment
metadata:
@@ -8,8 +10,6 @@ spec:
selector:
matchLabels:
app: paperless
strategy:
type: Recreate
template:
metadata:
labels:
@@ -18,111 +18,119 @@ spec:
affinity:
nodeAffinity:
preferredDuringSchedulingIgnoredDuringExecution:
- preference:
matchExpressions:
- key: kubernetes.io/hostname
operator: In
values:
- iris
weight: 100
- weight: 100
preference:
matchExpressions:
- key: kubernetes.io/hostname
operator: In
values:
- iris
containers:
- env:
- name: PUID
value: '1000'
- name: PGID
value: '1000'
- name: PAPERLESS_URL
value: http://paperless.haven
- name: PAPERLESS_TIME_ZONE
value: America/Sao_Paulo
- name: PAPERLESS_OCR_LANGUAGE
value: por
- name: PAPERLESS_OCR_LANGUAGES
value: por
- name: PAPERLESS_OCR_USER_ARGS
value: '{"invalidate_digital_signatures": true}'
- name: PAPERLESS_DBHOST
value: postgresql.haven
- name: PAPERLESS_DBNAME
valueFrom:
secretKeyRef:
key: PAPERLESS_DBNAME
name: paperless-secret
- name: PAPERLESS_DBUSER
valueFrom:
secretKeyRef:
key: PAPERLESS_DBUSER
name: paperless-secret
- name: PAPERLESS_DBPASSWORD
valueFrom:
secretKeyRef:
key: PAPERLESS_DBPASSWORD
name: paperless-secret
- name: PAPERLESS_REDIS
value: redis://redis.haven:6379
- name: PAPERLESS_PORT
value: '8000'
- name: PAPERLESS_SECRET_KEY
valueFrom:
secretKeyRef:
key: PAPERLESS_SECRET_KEY
name: paperless-secret
image: ghcr.io/paperless-ngx/paperless-ngx:latest
imagePullPolicy: Always
name: paperless
ports:
- containerPort: 8000
name: paperless-port
protocol: TCP
resources:
limits:
cpu: '4'
memory: 1Gi
requests:
cpu: 100m
memory: 256Mi
terminationMessagePath: /dev/termination-log
terminationMessagePolicy: File
volumeMounts:
- mountPath: /usr/src/paperless/data
name: paperless-data
subPath: data
- mountPath: /usr/src/paperless/media
name: paperless-data
subPath: media
- mountPath: /usr/src/paperless/export
name: paperless-data
subPath: export
- mountPath: /usr/src/paperless/consume
name: paperless-data
subPath: consume
dnsPolicy: ClusterFirst
restartPolicy: Always
schedulerName: default-scheduler
securityContext: {}
terminationGracePeriodSeconds: 30
- name: paperless
image: ghcr.io/paperless-ngx/paperless-ngx:latest
imagePullPolicy: Always
env:
- name: PUID
value: "1000"
- name: PGID
value: "1000"
- name: PAPERLESS_URL
value: "http://paperless.haven"
- name: PAPERLESS_TIME_ZONE
value: "America/Sao_Paulo"
- name: PAPERLESS_OCR_LANGUAGE
value: "por"
- name: PAPERLESS_OCR_LANGUAGES
value: "por"
- name: PAPERLESS_OCR_USER_ARGS
value: '{"invalidate_digital_signatures": true}'
- name: PAPERLESS_DBHOST
value: postgresql.haven
- name: PAPERLESS_DBNAME
valueFrom:
secretKeyRef:
name: paperless-secret
key: PAPERLESS_DBNAME
- name: PAPERLESS_DBUSER
valueFrom:
secretKeyRef:
name: paperless-secret
key: PAPERLESS_DBUSER
- name: PAPERLESS_DBPASSWORD
valueFrom:
secretKeyRef:
name: paperless-secret
key: PAPERLESS_DBPASSWORD
- name: PAPERLESS_REDIS
value: "redis://redis.haven:6379"
- name: PAPERLESS_PORT
value: "8000"
- name: PAPERLESS_SECRET_KEY
valueFrom:
secretKeyRef:
name: paperless-secret
key: PAPERLESS_SECRET_KEY
ports:
- containerPort: 8000
name: paperless-port
resources:
requests:
cpu: "100m"
memory: "256Mi"
limits:
cpu: "4000m"
memory: "1Gi"
volumeMounts:
- name: paperless-data
subPath: data
mountPath: /usr/src/paperless/data
- name: paperless-data
subPath: media
mountPath: /usr/src/paperless/media
- name: paperless-data
subPath: export
mountPath: /usr/src/paperless/export
- name: paperless-data
subPath: consume
mountPath: /usr/src/paperless/consume
volumes:
- name: paperless-data
persistentVolumeClaim:
claimName: paperless-data
- name: paperless-data
persistentVolumeClaim:
claimName: paperless-data
---
# 2) Service
apiVersion: v1
kind: Service
metadata:
name: paperless
namespace: default
spec:
internalTrafficPolicy: Cluster
ipFamilies:
- IPv4
ipFamilyPolicy: SingleStack
ports:
- port: 8000
protocol: TCP
targetPort: paperless-port
type: ClusterIP
selector:
app: paperless
sessionAffinity: None
type: ClusterIP
ports:
- port: 8000
targetPort: paperless-port
---
# 3) PersistentVolumeClaim
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: paperless-data
namespace: default
annotations:
nfs.io/storage-path: "paperless-data"
spec:
storageClassName: "nfs-client"
accessModes:
- ReadWriteMany
resources:
requests:
storage: 5Gi
limits:
storage: 15Gi
---
# 4) Ingress
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
@@ -131,28 +139,13 @@ metadata:
spec:
ingressClassName: nginx
rules:
- host: paperless.haven
http:
paths:
- backend:
service:
name: paperless
port:
number: 8000
path: /
pathType: Prefix
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: paperless-data
namespace: default
spec:
accessModes:
- ReadWriteMany
resources:
limits:
storage: 15Gi
requests:
storage: 5Gi
storageClassName: nfs-client
volumeMode: Filesystem
- host: paperless.haven
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: paperless
port:
number: 8000