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

4.1 KiB

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#

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