Ist ein Dokument Management System, um Unterlagen digital zu archivieren.
Portainer Stack:
services:
broker:
image: docker.io/library/redis:8
restart: unless-stopped
volumes:
- redisdata:/data
db:
image: docker.io/library/postgres:18
restart: unless-stopped
volumes:
- pgdata:/var/lib/postgresql
environment:
POSTGRES_DB: paperless
POSTGRES_USER: paperless
POSTGRES_PASSWORD: paperless
webserver:
image: ghcr.io/paperless-ngx/paperless-ngx:latest
restart: unless-stopped
depends_on:
- db
- broker
ports:
- "8010:8000"
volumes:
- data:/usr/src/paperless/data
- /mnt/hdd1/paperless/media:/usr/src/paperless/media
- /mnt/hdd1/paperless/export:/usr/src/paperless/export
- /mnt/hdd1/paperless/consume:/usr/src/paperless/consume
environment:
PAPERLESS_REDIS: redis://broker:6379
PAPERLESS_DBHOST: db
env_file:
- stack.env
volumes:
data:
media:
pgdata:
redisdata:
Environment variables:
USERMAP_UID=1000 USERMAP_GID=1000 PAPERLESS_OCR_LANGUAGE=eng
Es wird ein tägliches Backup erstellt und auf den lokalen Backupserver sowie auf die Storaegebox von Hetzner kopiert.
Backupscript:
nano /home/jorg/scripte/backupPaperless.sh
#!/bin/bash
#backupPaperless.sh
#Paperless Export nach /mnt/hdd1/paperless/export
docker exec paperless-webserver-1 document_exporter ../export -z
#Export zum Homeserver sichern
rsync -av /mnt/hdd1/paperless/export jorg@192.168.178.99:/mnt/hdd/sicherung/paperless
#Export zur Hetzner Storeagebox sichern
rsync -avz -e 'ssh -p 23' /mnt/hdd1/paperless/export ***@***.your-storagebox.de:/home/backup/paperless
# Definiere Ordner und Endung
TARGET_DIR="/mnt/hdd1/paperless/export"
PATTERN="*.zip"
# Datein älter als 7 Tage löschen
find "$TARGET_DIR" -type f -name "$PATTERN" -mtime +7 -exec rm -f {} \;
# Optional: Zeige Abschluss
echo "Deleted files matching '$PATTERN' older than 7 days in $TARGET_DIR"
Das Script als Cronjob täglich starten:
crontab -e
# Paperless export 0 23 * * * /home/jorg/scripte/backupPaperless.sh
Das Backup muss im export Ordner von paperless-ngx liegen und dann mittels Dokument Importer wieder hergestellt werden.
docker exec paperless-webserver-1 document_importer ../export
Den Tag ’unsort’ und Dokumenttyp ’Unsortiert’ erstellen
Eine E-Mail Adresse unter E-Mailkonto hinterlegen
Eine E-Mail-Regel erstellen, um Anhänge automatisch zu erfassen und als Unsortiert markieren