💥 add all the files

This commit is contained in:
2024-06-19 13:44:42 +01:00
commit f7aeb107de
7 changed files with 302 additions and 0 deletions
+11
View File
@@ -0,0 +1,11 @@
apiVersion: v1
kind: ConfigMap
metadata:
name: config
namespace: bookstack
data:
LOCAL_UID: "1000"
LOCAL_GID: "1000"
TZ: "Europe/London"
APP_URL: "https://bookstack.tryton.geeraert.eu"
DB_PORT: "3306"
+57
View File
@@ -0,0 +1,57 @@
apiVersion: v1
kind: Namespace
metadata:
name: paperless
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: paperless-db
namespace: paperless
spec:
replicas: 1
selector:
matchLabels:
app: paperless-db
template:
metadata:
labels:
app: paperless-db
spec:
containers:
- name: db
image: docker.io/library/postgres:15
imagePullPolicy: IfNotPresent
env:
- name: POSTGRES_DB
value: "paperless"
- name: POSTGRES_USER
value: "paperless"
- name: POSTGRES_PASSWORD
value: "paperless"
volumeMounts:
- name: pgdata
mountPath: /var/lib/postgresql/data
ports:
- name: postgres
containerPort: 5432
volumes:
- name: pgdata
hostPath:
path: /opt/kubernetes/Paperless_kube/data/pgdata
---
apiVersion: v1
kind: Service
metadata:
name: db
namespace: paperless
spec:
selector:
app: paperless-db
ports:
- protocol: TCP
port: 5432
targetPort: postgres
+29
View File
@@ -0,0 +1,29 @@
apiVersion: v1
data:
post-consumption-example.sh: |
#!/usr/bin/env bash
echo "
A document with an id of ${DOCUMENT_ID} was just consumed. I know the
following additional information about it:
* Generated File Name: ${DOCUMENT_FILE_NAME}
* Archive Path: ${DOCUMENT_ARCHIVE_PATH}
* Source Path: ${DOCUMENT_SOURCE_PATH}
* Created: ${DOCUMENT_CREATED}
* Added: ${DOCUMENT_ADDED}
* Modified: ${DOCUMENT_MODIFIED}
* Thumbnail Path: ${DOCUMENT_THUMBNAIL_PATH}
* Download URL: ${DOCUMENT_DOWNLOAD_URL}
* Thumbnail URL: ${DOCUMENT_THUMBNAIL_URL}
* Correspondent: ${DOCUMENT_CORRESPONDENT}
* Tags: ${DOCUMENT_TAGS}
It was consumed with the passphrase ${PASSPHRASE}
"
kind: ConfigMap
metadata:
creationTimestamp: null
name: paperless-post-consumption
+50
View File
@@ -0,0 +1,50 @@
apiVersion: v1
kind: Namespace
metadata:
name: paperless
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: paperless-redis
namespace: paperless
spec:
replicas: 1
selector:
matchLabels:
app: paperless-redis
template:
metadata:
labels:
app: paperless-redis
spec:
containers:
- name: broker
image: docker.io/library/redis:7
imagePullPolicy: IfNotPresent
volumeMounts:
- name: redisdata
mountPath: /data
ports:
- name: redis
containerPort: 6379
volumes:
- name: redisdata
hostPath:
path: /opt/kubernetes/Paperless_kube/data/redisdata
---
apiVersion: v1
kind: Service
metadata:
name: redis
namespace: paperless
spec:
selector:
app: paperless-redis
ports:
- protocol: TCP
port: 6379
targetPort: redis
+95
View File
@@ -0,0 +1,95 @@
apiVersion: v1
kind: Namespace
metadata:
name: paperless
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: paperless-webserver
namespace: paperless
spec:
replicas: 1
selector:
matchLabels:
app: paperless-webserver
template:
metadata:
labels:
app: paperless-webserver
spec:
containers:
- name: paperless-webserver
image: ghcr.io/paperless-ngx/paperless-ngx:latest
imagePullPolicy: IfNotPresent
ports:
- containerPort: 8000
name: webserver-port
env:
- name: PAPERLESS_URL
value: "https://paperless.tryton.geeraert.eu"
- name: PAPERLESS_REDIS
value: "redis://redis:6379"
- name: PAPERLESS_DBHOST
value: "db"
- name: PAPERLESS_POST_CONSUME_SCRIPT
value: "/usr/src/paperless/scripts/post-consumption-example.sh"
- name: PAPERLESS_ADMIN_USER
value: "admin"
- name: PAPERLESS_ADMIN_PASSWORD
value: "admin"
- name: PAPERLESS_OCR_USER_ARGS
value: '{"invalidate_digital_signatures": true}'
volumeMounts:
# - name: data
# mountPath: /usr/src/paperless/data
- name: paperless-data
mountPath: /usr/src/paperless/data
- name: media
mountPath: /usr/src/paperless/media
- name: export
mountPath: /usr/src/paperless/export
- name: consume
mountPath: /usr/src/paperless/consume
- name: scripts
mountPath: /usr/src/paperless/scripts/
volumes:
- name: data
hostPath:
path: /opt/kubernetes/Paperless_kube/data/data
- name: paperless-data
persistentVolumeClaim:
claimName: paperless-data
- name: export
persistentVolumeClaim:
claimName: paperless-export
- name: media
persistentVolumeClaim:
claimName: paperless-media
- name: consume
persistentVolumeClaim:
claimName: paperless-consume
# - name: consume
# hostPath:
# path: /opt/kubernetes/Paperless_kube/data/consume
- name: scripts
configMap:
name: paperless-post-consumption
defaultMode: 0555
---
apiVersion: v1
kind: Service
metadata:
name: webserver
namespace: paperless
spec:
ports:
- port: 8000
targetPort: webserver-port
protocol: TCP
selector:
app: paperless-webserver
+12
View File
@@ -0,0 +1,12 @@
apiVersion: v1
data:
POSTGRES_DB: cGFwZXJsZXNz
POSTGRES_USER: cGFwZXJsZXNz
POSTGRES_PASSWORD: cGFwZXJsZXNz
PAPERLESS_ADMIN_USER: YWRtaW4=
PAPERLESS_ADMIN_PASSWORD: YWRtaW4=
kind: Secret
metadata:
name: paperless-credentials
namespace: paperless
type: Opaque
+48
View File
@@ -0,0 +1,48 @@
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: paperless-media
spec:
storageClassName: nfs-storage-intelligent
accessModes:
- ReadWriteMany
resources:
requests:
storage: 20Gi
---
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: paperless-export
spec:
storageClassName: nfs-storage-intelligent
accessModes:
- ReadWriteMany
resources:
requests:
storage: 2Gi
---
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: paperless-data
spec:
storageClassName: nfs-storage-intelligent
accessModes:
- ReadWriteMany
resources:
requests:
storage: 200Mi
---
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: paperless-consume
spec:
storageClassName: nfs-storage-intelligent
accessModes:
- ReadWriteMany
resources:
requests:
storage: 1Gi