zettelkasten/OneNoteExport/Technik/Hardware/Geräte/11_Paperless ngx.md

252 lines
4.1 KiB
Markdown
Raw Normal View History

2023-08-17 19:32:37 +02:00
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