252 lines
4.1 KiB
Markdown
252 lines
4.1 KiB
Markdown
![]() |
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
|