Paperless-ngx Paperless-ngx – DMS via Docker auf dem NAS

Ponti

Benutzer
Mitglied seit
11. Nov 2023
Beiträge
74
Punkte für Reaktionen
8
Punkte
8
Und wenn ich die Archivierung deaktiviert habe? ("skip archive file" in OCR-Settings)
(mir geht es nicht um das löschen des Originals)
 

Monacum

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
03. Jan 2022
Beiträge
2.216
Punkte für Reaktionen
1.035
Punkte
224
OCR ist immer aktiviert und der Text in der Datenbank hinterlegt.
 

Monacum

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
03. Jan 2022
Beiträge
2.216
Punkte für Reaktionen
1.035
Punkte
224

Paperless-ngx v2.10.2

Repository: paperless-ngx/paperless-ngx · Tag: v2.10.2 · Commit: e4265d0 · Released by: github-actions[bot]

paperless-ngx 2.10.2​

Bug Fixes​

  • Fix: always update document modified property on bulk edit operations @shamoon (#7079)
  • Fix: correct frontend retrieval of trash delay setting @shamoon (#7067)
  • Fix: index fresh document data after update archive file @shamoon (#7057)
  • Fix: Safari browser PDF viewer not loading in 2.10.x @shamoon (#7056)
  • Fix: Prefer the exporter metadata JSON file over the version JSON file @stumpylog(#7048)
 

Tommes

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
26. Okt 2009
Beiträge
9.736
Punkte für Reaktionen
1.643
Punkte
314

Monacum

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
03. Jan 2022
Beiträge
2.216
Punkte für Reaktionen
1.035
Punkte
224
Danke! Mach ich später, muss mich mit @geimist noch schnell um ein persönliches synOCR-Problem kümmern 😱🤣
 
  • Like
Reaktionen: Tommes

crawfish

Benutzer
Mitglied seit
06. Jun 2024
Beiträge
12
Punkte für Reaktionen
9
Punkte
3
Hallo zusammen, ich hänge mich hier mal dran.

Da mir in einem anderen Thread schon so nett geholfen wurde steht jetzt mittlerweile eine DS923+ bei mir, ist bestückt und die alte DS läuft als Backup-Ziel weiter. Soweit so gut. Paperless ist mittlerweile auch installiert und läuft (mit einer MariaDB anstatt Postgres, Container Manager, kein Portainer). Ein paar Probe Dokumente sind auch schon eingelesen!

Die Ordner habe ich wie in der Anleitung von @Monacum beschrieben gemappt und die werden mit Hyper Backup auch schon gesichert. Jetzt stellt sich noch die Frage was ich noch sichern bzw. exportieren muss um das System wiederherstellen zu können.

Brauche ich noch einen Dump der MariaDB? Wenn ja, wie mache ich den?
Brauche ich noch einen Export aus Paperless um ganz Safe zu sein? Auch hier, wie geht das?


Ich habe den neuen Abschnitt Backup schon gelesen, so richtig schlau draus werde ich aber noch nicht. Vielleicht könnt ihr mir hier ein wenig auf die Sprünge helfen.

YAML:
services:
  broker:
   image: docker.io/library/redis:latest
   container_name: redis
   restart: unless-stopped
   volumes:
   - /volume2/docker/paperlessngx/redis:/data

  db:
   image: docker.io/library/mariadb:latest
   container_name: mariadb
   restart: unless-stopped
   volumes:
   - /volume2/docker/paperlessngx/mariadb:/var/lib/mysql
   command:
   - "--character-set-server=utf8mb4"
   - "--collation-server=utf8mb4_unicode_ci"
   environment:
     TZ: Europe/Paris
     MARIADB_HOST: paperless
     MARIADB_DATABASE: paperless
     MARIADB_USER: paperless
     MARIADB_PASSWORD: paperless
     MARIADB_ROOT_PASSWORD: paperless

  webserver:
    image: ghcr.io/paperless-ngx/paperless-ngx:latest
    container_name: paperlessngx
    restart: unless-stopped
    depends_on:
    - db
    - broker
    ports:
    - "34343:8000"
    healthcheck:
     test: ["CMD", "curl", "-fs", "-S", "--max-time", "2", "http://localhost:8000"]
     interval: 30s
     timeout: 10s
     retries: 5   
    volumes:
        - /volume2/docker/paperlessngx/data:/usr/src/paperless/data
        - /volume2/docker/paperlessngx/media:/usr/src/paperless/media
        - /volume2/docker/paperlessngx/export:/usr/src/paperless/export
        - /volume2/docker/paperlessngx/consume:/usr/src/paperless/consume
    environment:
        PAPERLESS_REDIS: redis://broker:6379
        PAPERLESS_DBENGINE: mariadb
        PAPERLESS_DBHOST: db
        PAPERLESS_DBUSER: paperless # only needed if non-default username
        PAPERLESS_DBPASS: paperless # only needed if non-default password
        PAPERLESS_DBPORT: 3306
        PAPERLESS_OCR_LANGUAGES: eng deu # ändere es, wenn du möchtest
        PAPERLESS_OCR_LANGUAGE: deu+eng # ändere es, wenn du möchtest
        USERMAP_UID: 1026
        USERMAP_GID: 100
        PAPERLESS_TIME_ZONE: Europe/Berlin # ändere es, wenn du möchtest
        PAPERLESS_ADMIN_USER: admin
        PAPERLESS_ADMIN_PASSWORD: geht dich nix an
        PAPERLESS_SECRET_KEY: das auch nicht
        PAPERLESS_FILENAME_FORMAT: "{created_year}/{created}-{correspondent}-{document_type}-{title}-{tag_list}'"

volumes:
  data:
  media:
  mariadb:
  redis:

Verlinkt gerne Beiträge die ich evtl. übersehen oder nicht gefunden habe. Falls noch was fehlt, liefere ich gerne nach ;)
 

Tommes

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
26. Okt 2009
Beiträge
9.736
Punkte für Reaktionen
1.643
Punkte
314
  • Like
Reaktionen: Monacum

crawfish

Benutzer
Mitglied seit
06. Jun 2024
Beiträge
12
Punkte für Reaktionen
9
Punkte
3
*klick* … und fürs zurückspielen des Dumps *klick*
beides wohl dann im Terminal (bin aufm Mac unterwegs) ausführen, in meinem Fall im Verzeichnis "paperlessngx" für den dump und zum zurückspielen im Verzeichnis des Backups .. korrekt?

Exportieren könnte man zusätzlich noch mit rsync, z.B. so…
Ich hab mich schlecht ausgedrückt. Das (was du mit rsync machst) sollte ja schon mit Hyper Backup gesichert sein. Ich meinte einen Export um meine Tags, Korrespondenten usw. nicht zu verlieren.
 

Monacum

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
03. Jan 2022
Beiträge
2.216
Punkte für Reaktionen
1.035
Punkte
224
Ja du kannst – ebenfalls über das Terminal – noch die integrierte Exportfunktion nutzen. Die Befehle, Parameter und Erklärungen dazu findest du in der Anleitung: Document Exporter

docker compose exec -T webserver document_exporter ../export
 

crawfish

Benutzer
Mitglied seit
06. Jun 2024
Beiträge
12
Punkte für Reaktionen
9
Punkte
3
Mittlerweile hab ich alles im Aufgabenplaner eingerichtet und läuft auch soweit. Getestet habe ich das Rückspielen auch schon. Sollte also im Ernstfall auch funktionieren.

Danke euch für die Tipps. Ich melde mich sicher wieder mit weiteren Fragen :LOL:
 

Tommes

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
26. Okt 2009
Beiträge
9.736
Punkte für Reaktionen
1.643
Punkte
314
Getestet habe ich das Rückspielen auch schon. Sollte also im Ernstfall auch funktionieren.
Hm… das wundert mich. Ich bin gestern selbst darüber gestolpert und musste feststellen, das es den Pfad /usr/bin/mysql in meinem MariaDB Container gar nicht gibt. Stattdessen müsste es wohl /usr/bin/mariadb heißen. Jedenfall hat mein gestriges testen nach der Anpassung des Pfads keine Fehlermeldung mehr ausgespuckt. Blöderweise wurde mir aber trotz eines angehängten -v (für Verbose) keine weiteren Informationen ausgespuckt. Daher wollte ich das heute Abend nochmal durchtesten.
 

crawfish

Benutzer
Mitglied seit
06. Jun 2024
Beiträge
12
Punkte für Reaktionen
9
Punkte
3
Den Pfad habe ich geändert und an meine Bedürfnisse angepasst. Ich habe einfach aus Unwissenheit dort MariaDB eingesetzt. Soweit ich das gesehen habe waren danach alle Dokumente wieder da wo sie sein sollten.

Hm, dann lese ich hier mal weiter mit. Danke für die Rückmeldung.
 

Tommes

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
26. Okt 2009
Beiträge
9.736
Punkte für Reaktionen
1.643
Punkte
314
Okay, wenn du den Pfad bei dir bereits angepasst hast, sollte es wohl funktionieren. Ich hatte gestern aber keine Lust mehr, der Sache mit dem Verbose auf dem Grund zu gehen. Beim Dumpen warf mir die Verbose Option halt was aus, beim zurückspielen jedoch nicht. Aber ich Check das nochmal
 

crawfish

Benutzer
Mitglied seit
06. Jun 2024
Beiträge
12
Punkte für Reaktionen
9
Punkte
3
Ich hatte das mit Testeinträgen und Testdokumenten direkt in paperless getestet. Da sah das für mich korrekt aus. Aber du steckst definitiv tiefer in diesem Thema drin als ich. Bin gespannt was du noch rausfindest.
 

Tommes

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
26. Okt 2009
Beiträge
9.736
Punkte für Reaktionen
1.643
Punkte
314
  • Haha
Reaktionen: crawfish

Tommes

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
26. Okt 2009
Beiträge
9.736
Punkte für Reaktionen
1.643
Punkte
314
Grade nochmal das Zurückspielen des Dump-Files mit gesetztem Optionsschalter -v (für Verbose) getestet und erhielt jedes mal eine Ausgabe im Terminal. Warum das gestern nicht funktionierte, kann ich zwar nicht ganz nachvollziehen, aber hey... es funktioniert und das ist die Hauptsache. Und wen es interessiert. Ich habe den Vorgang für den Dump und für das Wiederherstellen einer MariaDB am Ende meines HowTo: Paperless-ngx an MariaDB und phpMyAdmin binden hinzugefügt.
 

Tommes

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
26. Okt 2009
Beiträge
9.736
Punkte für Reaktionen
1.643
Punkte
314
Wobei... irgendwas stimmt da doch noch nicht.

Wenn ich versuche, den Dump nach dieser Syntax zurückzuspielen...
cat /[DUMPFILE_PATH]/$(date +%Y-%m-%d_%H-%M)_[FILENAME].sql | docker exec -i [MARIADB-CONTAINER-NAME] /usr/bin/mariadb --user=root --password=[MYSQL-ROOT-PASSWORD] [DATABASE]
... dann funktioniert das bei mir nicht. Wenn ich aber diese Syntax verwende...
docker exec -i [MARIADB-CONTAINER-NAME] mariadb --user=[PAPERLESS_DBUSER] --password=[PAPERLESS_DBPASS] [DATABASE] < /[DUMPFILE_PATH]/$(date +%Y-%m-%d_%H-%M)_[FILENAME].sql
... dann funktioniert das wiederherstellen.

Bei der ersten Syntax verwende ich für die MariaDB als Benutzer root und dessen Passwort, wohingegen ich in der zweiten Syntax den Benutzer paperless und dessen Passwort verwendet habe. Das ist seltsam und suggeriert mir, das die Datenbank als auch der Benutzer bereits vorhanden sein müssen, damit die Datenbank wiederhergestellt werden kann. Das muss ich mir nochmal genauer anschauen...
 

Tommes

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
26. Okt 2009
Beiträge
9.736
Punkte für Reaktionen
1.643
Punkte
314
Also... ich habe mir den Befehl zum Wiederherstellen nochmal genau angeschaut und habe folgende Erkenntnisse erlangt. Solange der Benutzer (paperless) und die Datenbank (paperless) bereits existieren, funktioniert der nachfolgende Befehl mit den Zugangsdaten des Datenbankbenutzer (paperless) und dessen Passwortes. In Verbindung mit root und dessen Passwort funktioniert das bei mir nicht. Gleiches gilt, wenn ich den cat Befehl voranstelle. Daher habe ich mein oben bereits erwähntes HowTo folgendermaßen umformuliert.

Datenbank-Dump der Paperless-ngx Datenbank wiederherstellen​

Hinweis: Der Benutzer (paperless) sowie die Datenbank (paperless) müssen bereits im Vorfeld über phpMyAdmin erstellt worden sein.
Bash:
#!/bin/bash
# Datenbank-Dump-File der Paperless-ngx Datenbank wiederherstellen
# Syntax :
# docker exec -i [MARIADB-CONTAINER-NAME] mariadb --user=[PAPERLESS_DBUSER] --password=[PAPERLESS_DBPASS] [DATABASE] < /[DUMPFILE_PATH]/$(date +%Y-%m-%d_%H-%M)_[FILENAME].sql

# Beispiel :
docker exec -i MariaDB mariadb --user=paperless --password=abcdef paperless < /volume1/docker/paperless-ngx/export/2024-06-01_19-00_Paperless-NGX_MariaDB_Dump.sql

Vielleicht mag das nochmal jemand gegenchecken. Bis dahin lasse ich das erstmal so stehen. Ach so, wenn man hinter docker exec -i MariaDB mariadb ein -v anhängt, erhält man auch eine Ausgabe, was alles ausgeführt wurde.

Tommes
 
  • Like
Reaktionen: _gm

Gefahrensucher

Benutzer
Mitglied seit
16. Jun 2012
Beiträge
16
Punkte für Reaktionen
0
Punkte
1
Hallo zusammen,

möchte mich auch in Paperless einarbeiten und habe gerade deine Anleitung auf meiner DS720 genutzt. Ich nutzte hierfür MariaDB und habe mir die entsprechende dml-Datei heruntergeladen und umbenannt. Die Installation hat dann funktioniert, ich musste allerdings im Laufe der Installation unter /config/ noch die Ordner /eport/ und /consume/ erstellen, damit die Installation durchgelaufen ist. Auch die sudo-Erstellung hat dann funktioniert. Bei Schritt 4 (sudo docker-compose up -d) bekomme ich aber nun nach Eingabe meines unter Schritt 3 erstellten Passworts immer die Fehlermeldung "Sorry, try again."
Hat jemand von euch eine Idee, was ich falsch gemacht haben könnte und wie ich dem Fehler auf die Schliche komme?

Danke und viele Grüße
Maik
 

Monacum

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
03. Jan 2022
Beiträge
2.216
Punkte für Reaktionen
1.035
Punkte
224

Paperless-ngx v2.11.0

Repository: paperless-ngx/paperless-ngx · Tag: v2.11.0 · Commit: 9950ff2 · Released by: github-actions[bot]

paperless-ngx 2.11.0​

Breaking Changes​

Features​

Bug Fixes​

  • Fix: include documents in trash for existing asn check @shamoon (#7189)
  • Fix: include documents in trash in sanity check @shamoon (#7133)
  • Fix: handle errors for trash actions and only show documents user can restore or delete @shamoon (#7119)
  • Fix: dont include documents in trash in counts @shamoon (#7111)
  • Fix: use temp dir for split / merge @shamoon (#7105)

Maintenance​

 


 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat