zettelkasten/OneNoteExport/Technik/Hardware/Geräte/11_Paperless ngx.md
2023-08-17 19:32:37 +02:00

252 lines
4.1 KiB
Markdown
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

Paperless ngx
Donnerstag, 6. Juli 2023
22:06
 
Anleitung zur Installation von Paperless-ngx auf Synology
 
<https://deployn.de/blog/paperless-synology/>
 
 
Yml file :
 
version: \'3.6\'
 
networks:
internal:
external: false
 
services:
broker:
container_name: paperless-redis
image: redis:6.2
\# Wenn man lieber 6.0 nutzen möchte
\# image: redis:6.0
networks:
\- internal
volumes:
\# Hier den richtigen Pfad eintragen
\- /volume1/paperless/redis:/redis
\# - /volume2/paperless/redis:/redis
restart: unless-stopped
 
db:
container_name: paperless-db
image: postgres:14
\# Wenn man lieber die 13 Version von PostgreSQL möchte
\# image: postgres:13
\# Nicht einfach up- oder downgraden, die Datenbank wird dann nicht mehr laden.
networks:
\- internal
restart: unless-stopped
volumes:
\# Hier den richtigen Pfad eintragen
\- /volume3/docker/paperless-ngx/db:/var/lib/postgresql/data
\# - /volume2/paperless/db:/var/lib/postgresql/data
environment:
POSTGRES_DB: paperless
POSTGRES_USER: paperless
\# Hier ein anderes Passwort verwenden
POSTGRES_PASSWORD: rkdN19DTd3CxWOuXP6eSyfhB19HRAx
 
webserver:
container_name: paperless
image: ghcr.io/paperless-ngx/paperless-ngx:latest
networks:
\# Wenn sich der Proxy Manager auf der Synology befindet, sollte hier zusätzlich das Netzwerk davon eingetragen werden, statt einen Port freizugeben.
\- internal
restart: unless-stopped
depends_on:
\- db
\- broker
ports:
\# Diesen Teil löschen, wenn der Proxy Manager auf der Synology ist.
\# Ansonsten hier einen Port auswählen, der frei ist.
\- 8010:8010
\# - 8011:8000
\# - 8012:8000
healthcheck:
test: \[\'CMD\', \'curl\', \'-f\', \'<http://localhost:8000>\'\]
interval: 30s
timeout: 10s
retries: 5
volumes:
\# Hier die richtigen Pfade eintragen
\- /volume3/docker/paperless-ngx/data:/usr/src/paperless/data
\- /volume3/docker/paperless-ngx/media:/usr/src/paperless/media
\- /volume3/docker/paperless-ngx/export:/usr/src/paperless/export
\- /volume3/docker/paperless-ngx/consume:/usr/src/paperless/consume
environment:
PAPERLESS_REDIS: redis://broker:6379
PAPERLESS_DBHOST: db
PAPERLESS_DBPASS: rkdN19DTd3CxWOuXP6eSyfhB19HRAx \# Das ist das Passwort von oben
#USERMAP_UID: 1010 \# UserID für den docker Benutzer
#USERMAP_GID: 65555 \# GruppenID für den docker Benutzer
PAPERLESS_OCR_LANGUAGES: eng deu
\# Hier einen zufälligen Key eintragen, wenn man Paperless von Außen erreichbar machen möchte.
PAPERLESS_SECRET_KEY: C3Q2dLkVPqZWDKTXgkHwWhJ6jk8XqAbeDmDZjCxvb3c2jXl6pTGQXqJFqEkS9umFmXrk4WmzT8rlwjqWan6A2G54Q5IgraBv96CS
\# Hier die eigene Domain hinter localhost eintragen, wenn man einen Proxy Host benutzt, ansonsten diese Umgebungsvariable löschen.
#PAPERLESS_ALLOWED_HOSTS: \'localhost,paperless.domain.de\'
PAPERLESS_TIME_ZONE: Europe/Berlin
PAPERLESS_OCR_LANGUAGE: deu
\# Hier anpassen, wenn man eine andere Ordnerstruktur haben möchte
PAPERLESS_FILENAME_FORMAT: \'{created_year}/{title}\'
\# Die nächsten drei Zeilen weglassen, wenn man Tika/Gotenberg nicht einsetzen möchte.
PAPERLESS_TIKA_ENABLED: 1
PAPERLESS_TIKA_GOTENBERG_ENDPOINT: [http://gotenberg:3000/forms/libreoffice/convert#](http://gotenberg:3000/forms/libreoffice/convert)
PAPERLESS_TIKA_ENDPOINT: <http://tika:9998>
\# Die nächste Zeile setzen, wenn man einen Proxy Server benutzt.
#PAPERLESS_URL: \'<https://paperless.domain.de>\'
 
db-backup:
container_name: paperless-db-backup
\# Das Image ggf. an das obere anpassen
image: postgres:14
volumes:
\# Hier den richtigen Pfad eintragen
\- /volume3/docker/paperless-ngx/db-backup:/dump
\- /etc/localtime:/etc/localtime:ro
environment:
PGHOST: db
PGDATABASE: paperless
PGUSER: paperless
PGPASSWORD: rkdN19DTd3CxWOuXP6eSyfhB19HRAx \# Das ist das Passwort von oben
BACKUP_NUM_KEEP: 10
BACKUP_FREQUENCY: 7d \# Alle 7 Tage, kann man anpassen
entrypoint: \|
bash -c \'bash -s \<\<EOF
trap \"break;exit\" SIGHUP SIGINT SIGTERM
sleep 2m
while /bin/true; do
pg_dump -Fc \> /dump/dump\_\\\`date +%d-%m-%Y\"\_\"%H\_%M\_%S\\\`.psql
(ls -t /dump/dump\*.psql\|head -n \$\$BACKUP_NUM_KEEP;ls /dump/dump\*.psql)\|sort\|uniq -u\|xargs rm \-- {}
sleep \$\$BACKUP_FREQUENCY
done
EOF\'
networks:
\- internal