Benutzer-Werkzeuge

Webseiten-Werkzeuge


paperless-ngx

paperless-ngx

Ist ein Dokument Management System, um Unterlagen digital zu archivieren.

Installieren in Portainer

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

Backup

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

Wiederherstellung

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

E-Mail einrichten

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

paperless-ngx.txt · Zuletzt geändert: von ranslite