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

Monacum

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

Paperless-ngx – Ein Sammelthread für ein DMS via Docker auf dem NAS​

Wozu dient dieser Thread?​

Dieser Thread ist als Sammelthread gedacht für Fragen zu Paperless-ngx und zur Information für alle, die Paperless nutzen. Paperless-ngx ist ein Fork von Paperless-ng, einem Dokumentenmanagementsystem (DMS), welches als Container unter Docker/Container Manager (ab DSM 7.2) läuft. Zusätzlich zu allgemeinen Fragen werde ich hier entsprechend einen Beitrag erstellen, wenn eine neue Version erscheint. „Größere Probleme“ sprecht besser nicht hier an, sondern eröffnet einen eigenen Thread unter Blog → Foren → Verschiedenes → 3rd Party-Anwendungen und setzt dann den Paperless-Tag.

Ist Paperless-ngx überhaupt etwas für mich?​

Das kann man natürlich immer nur für sich selbst beantworten. Manche Personen greifen lieber direkt auf ihre Dokumente in den Ordnern zu, für diejenigen ist vielleicht synOCR besser geeignet. Wer Paperless-ngx nutzen möchte, sollte die gesamte Verwaltung von dem Programm machen lassen und Änderungen nur über die Oberfläche vornehmen. Die Dateien lassen sich trotzdem ohne große Probleme aus der Ordnerstruktur heraus kopieren oder über die Oberfläche herunterladen.

Wer noch weitere Gedanken zur Entscheidung braucht, dem sei der Thread Paperless-ngx: Ein kurzer Erfahrungsbericht sowie ein erstes Resümee von @Tommes empfohlen. Dort wird über viele Fragen diskutiert, die immer mal wieder hier im Forum aufkommen, weil Paperless-ngx schon eine feine Sache, aber nicht für jede Arbeitsweise geeignet ist. Solche Fragen sollte man jedenfalls klären, bevor man die ersten 1000 Dokumente verarbeitet 😉

Wie installiere ich Paperless-ngx?​

Dazu findest du eine ausführliche Anleitung ab hier in zwei Beiträgen. Gerne Feedback geben, wenn es Probleme damit gibt.

Die aktuelle Version​

VersionDatumErgänzungen/Links auf den Beitrag mit weiteren Infos
v1.16.528. Juni 2023

Features​

  • Feature: support barcode upscaling for better detection of small barcodes @bmachek (#3655)

Bug Fixes​

  • Fix: owner removed when set_permissions passed on object create @shamoon(#3702)
v1.17.04. August 2023Siehe hier
v2.0.029. November 2023Siehe hier
v2.1.06. Dezember 2023Siehe hier
v2.2.028. Dezember 2023Siehe hier
v2.3.06. Januar 2024Siehe hier
v2.4.019. Januar 2024Siehe hier
v2.5.010. Februar 2024Siehe hier
v2.6.05. März 2024Siehe hier
v2.7.06. April 2024Siehe hier
v2.8.07. Mai 2024Siehe hier
v2.9.03. Juni 2024Siehe hier
v2.10.018. Juni 2024Siehe hier
v2.11.011. Juli 2024Siehe hier
v2.11.122. Juli 2024Siehe hier
v2.11.2Ende Juli 2024Siehe hier
v2.11.38. August 2024Siehe hier

Ein anderer User, der ebenfalls Paperless-ngx im Einsatz hat und immer mit Rat und Tat zur Seite steht, ist derzeit hier @Adama, viele weitere hilfreiche Beiträge stammen aus der Feder von @EDvonSchleck.

(Video-)Tutorials​

Backup​

Grundsätzlich gibt es mehrere Möglichkeiten, Paperless-ngx bzw. Teile des Programms zu nutzen. Die Software selbst besitzt einen Exporter und Importer, der neben den Dokumenten auch eine sog. manifest.json exportiert, die die zusätzlichen Daten der pdf wie Tags, Korrespondent etc. enthält. Wer seine Installation mit meiner Anleitung oben erstellt hat, der sollte die gemappten Ordner mit Hyper Backup gemäß der 3-2-1-Strategie sichern und kann sie dann im Falle des Falles wieder zurückspielen.

Um Inkonsistenzen mit der Datenbank zu vermeiden, bietet es sich vor allem bei PostgreSQL an, einen Dump zu erstellen, also eine Sicherung der Datenbank. Die wird dafür angehalten, sodass während der Sicherung nicht in die Datenbank geschrieben wird. Eine gesunde Kombination aus diesen Sicherungen sollte ausreichen, um für (fast) alle Fälle gewappnet zu sein. Weiterführende Infos unter anderem hier: Anleitung Backup/Restore Paperless ngx?

HowTo: Paperless-ngx an MariaDB und phpMyAdmin binden

Eine Anleitung von @Tommes für diejenigen unter Euch, die nicht auf PostgreSQL setzen wollen und Probleme bei Major Updates vermeiden wollen.

Paperless-ngx mit mehreren Instanzen nutzen​

Für alle die, die mehr als eine Instanz von Paperless-ngx nutzen wollen, hat @alexhell hier eine Anleitung für die Nutzung mit Portainer geschrieben.

Fragen und Lösungen aus diesem Thread​

Bisherige Themen​

Zu Paperless-ngx

Bisherige Themen​

Zu Paperless-ng

Die Listen haben keinen Anspruch auf Vollständigkeit! Weitere Ergebnisse hier im Forum findet man mit einer Google Suche nach site:synology-forum.de "Paperless-ngx"

  • 9. August 2024: v2.11.2–2.11.3
  • 25. Juli 2024: Einleitung angepasst
  • 24. Juli 2024: v2.11.0–2.11.1
  • 25. Juni 2024: How To MariaDB von @Tommes, v2.10.1
  • 19. Juni 2024: v2.10.1
  • 18. Juni 2024: v2.10.0
  • 17. Juni 2024: Hinweis auf Entscheidungshilfe, danke @Tommes!
  • 16. Juni 2024: Abschnitt Backup ergänzt
  • 15. Juni 2024: v2.5.1–2.9.0, nicht mehr jede Unter-Unterversion aufgeführt, Liste ist auf GitHub vollständig abrufbar
  • 10. Februar 2024: v2.5.0
  • 1. Februar 2024: Anleitung zum Upgrade der PostgreSQL-Datenbank ergänzt
  • 30. Januar 2024: v2.2.1–2.4.3
  • 28. Dezember 2023: v2.2.0
  • 16. Dezember 2023: v2.1.0–2.1.3
  • 30. November 2023: v2.0.1
  • 29. November 2023: v2.0.0
  • 1. September 2023: v1.17.4
  • 29. August 2023: v1.17.3
  • 24. August 2023: v1.17.2
  • 15. August 2023: v1.17.1
  • 14. August 2023: Mehrere Instanzen deployen (Danke an @alexhell)
  • 4. August 2023: v1.17.0
  • 19. Juli 2023: Abschnitt (Video-)Tutorials ergänzt
  • 18. Juli 2023: Überarbeitung.
 
Zuletzt bearbeitet:

Monacum

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

Paperless-ngx v1.11.0

Repository: paperless-ngx/paperless-ngx · Tag: v1.11.0 · Commit: f9ce4d8 · Released by: github-actions[bot]

paperless-ngx 1.11.0​

Notable Changes​

Features​

Bug Fixes​

Documentation​

Maintenance​

All App Changes​

  • Add ability to provide the configuration file path using an env variable @hashworks (#2241)
  • Fix: support tags__id__none in advanced search, fix tags filter badge count for excluded @shamoon (#2205)
  • Chore: migrate to eslint @shamoon (#2199)
  • Feature: Adds option to allow a user to export directly to a zipfile @stumpylog (#2004)
  • Feature: Adds PaperlessTask admin page interface @stumpylog (#2184)
  • Bugfix: Decoding task signals could fail on datetime type @stumpylog (#2058)
  • Feature: speed up frontend by truncating content @shamoon (#2028)
  • Feature: Allow bulk download API to follow file name formatting @stumpylog (#2003)
  • Feature: Bake NLTK into Docker image @stumpylog (#2129)
  • Chore: Apply live testing backoff logic to new mail tests @stumpylog (#2134)
  • Feature: frontend paperless mail @shamoon (#2000)
  • Feature: Ability to consume mails and eml files @p-h-a-i-l (#848)
 

w00dcu11er

Benutzer
Sehr erfahren
Mitglied seit
16. Sep 2022
Beiträge
865
Punkte für Reaktionen
300
Punkte
89
Klasse Thread ... auch ich verwende P-NGX gerne, nur nicht so intensiv, dass ich alle Docs meines Lebens dorthin verlegen würde. Dazu gibt es noch einige Macken, aber mehr dann demnächst. :)
 
  • Like
Reaktionen: Monacum

Monacum

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
03. Jan 2022
Beiträge
2.200
Punkte für Reaktionen
1.024
Punkte
224
Und der zweite Release heute 😉

paperless-ngx 1.11.1​

Bug Fixes​

Documentation​

All App Changes​

 
  • Like
Reaktionen: EDvonSchleck

EDvonSchleck

Gesperrt
Mitglied seit
06. Mrz 2018
Beiträge
4.703
Punkte für Reaktionen
1.120
Punkte
214
Wie schon geschrieben, die Devs geben sich sehr viel Mühe und reagieren schnell auf Fehler. Mein Update kommt heute Nacht.
 

EDvonSchleck

Gesperrt
Mitglied seit
06. Mrz 2018
Beiträge
4.703
Punkte für Reaktionen
1.120
Punkte
214

paperless-ngx 1.11.2​

Versions 1.11.1 and 1.11.2 contain bug fixes from v1.11.0 that prevented use of the new email consumption feature

Bug Fixes​

  • Fix frontend mailrule missing consumption scope parameter @shamoon (#2280)

All App Changes​

  • Fix frontend mailrule missing consumption scope parameter @shamoon (#2280)
 

depoo

Benutzer
Mitglied seit
28. Dez 2020
Beiträge
15
Punkte für Reaktionen
0
Punkte
1
Hallo zusammen,

ich bin relativ neu in dieser Thematik aktiv. Aktuell habe ich folgenden Docker im Betrieb: https://github.com/jonaswinkler/paperless-ng.

Aktuell möchte ich von der Version auf paperless-ngx mit Officeanbindung und co.

Sobald ich paperless-ngx auf Volume1 installiere (Verzeichnis data, consume, etc. auf Volume 1) kommt es zum fehler: /sbin/docker-prepare.sh: line 72: /usr/src/paperless/data/migration_lock: Permission denied

Wenn ich paperless-ngx auf Volume1 installiere (Verzeichnis data, consume, etc. auf Volume 2) läuft es.

Aktuell läuft Paperless-ng Volume 1 mit dem Verzeichnis (data, consume, etc.) auf Volume 2.
Verschiebe ich die Daten von Volume 2 auf Volume 1 und vermerke das auch im Docker. Ist ebenfalls kein Start des Dockers notwendig.

Wichtigste frage ist natürlich, wie bekomme ich die bestehenden Daten von paperless-ng nach paperless-ngx?

Wenn ich hier falsch bin, gebt mir bescheid. Dann erstelle ich einen neuen Beitrag.

Welche weiteren Informationen werden Benötigt.

Hintergrund. Die Festplatte muss aus der NAS entfernt werden.

Ich wünsche allen einen guten Rutsch ins neue Jahr und bedanke mich im Voraus.
 

EDvonSchleck

Gesperrt
Mitglied seit
06. Mrz 2018
Beiträge
4.703
Punkte für Reaktionen
1.120
Punkte
214
Dein Volume-Problem bezieht sich nur auf Paperless? Verwendest du weitere Container? Ich denke, du hast ein Problem mit den installierten Anwendungen – kann es sein, dass du die Apps auf das Volume 2 migriert, hast beim Ausfall des Volume 1? Wenn du Probleme mit anderen Apps oder Container hast solltest du einen anderen Thread aufmachen, damit dieser Thread rund um Paperless nicht abdriftet.

Was das Updaten angeht, ist dieses nicht wirklich schwer. Vorher solltest du zur Sicherheit ein Datenbankupdate und/oder den Dokumenten Exporter benutzen. Anschließend musst du nur noch das Image anpassen bzw. den Stack bearbeiten und ausführen. Interessant ist auch, welche Datenbank du verwendest. Zur Auswahl kommt Postgres oder Sqlite. MariaDB/MySQL wurden gerade erst in Paperless-ngx eingebaut und kann somit ausgeschlossen werden. Teile bitte mit, welche Datenbank du nutzt oder wie du deine Installation installiert hast.

Für Office Dokumente benötigt du 2 zusätzliche Container: Tika & Gotenberg (7.4). Eventuell hilft dir die Installationsanleitung von Marius weiter. Ich würde es zwar so nicht installieren, da ich bei der Anleitung in Bezug auf der Datenbank und verwendeten Gotenberg ein Problem sehe, aber eventuell kommst du dadurch leichter in das Thema rein.

Ich habe die benötigten Images von Hand installiert und nutze kein Portainer.
 

EDvonSchleck

Gesperrt
Mitglied seit
06. Mrz 2018
Beiträge
4.703
Punkte für Reaktionen
1.120
Punkte
214

paperless-ngx 1.11.3​

Breaking Changes​

  • Bugfix: Return created task ID when posting document to API @stumpylog (#2279)

Bug Fixes​

  • Bugfix: Fix no content when processing some RTL files @stumpylog (#2295)
  • Bugfix: Handle email dates maybe being naive @stumpylog (#2293)
  • Fix: live filterable dropdowns broken in 1.11.x @shamoon (#2292)
  • Bugfix: Reading environment from files didn't work for management commands @stumpylog (#2261)
  • Bugfix: Return created task ID when posting document to API @stumpylog (#2279)

Documentation​

All App Changes​

 

Rolandm1

Benutzer
Mitglied seit
23. Nov 2013
Beiträge
57
Punkte für Reaktionen
4
Punkte
8
Guten morgen allerseits,

ich wünsche allen erst einmal ein hoffentlich gutes und gesundes 2023.

Ich bin vor kurzen über paperless-ngx gestolpert. Da ich im Grunde so wien Lösung suche werde ich das ganze weiterverfolgen.

Was mich im Moment als Einsteiger ein wenig irritiert, ist, dass es im Netz die unterschiedlichsten Anleitungen zur Installation und zum Einsatz gibt.

Gibt es eine gute Anleitung, an der man sich entlang hangeln kann.

Danke schon mal.
 

EDvonSchleck

Gesperrt
Mitglied seit
06. Mrz 2018
Beiträge
4.703
Punkte für Reaktionen
1.120
Punkte
214
Da gibt es unterschiedliche Auffassungen. Viele möchten sich nicht richtig mit der Materie auseinandersetzen und bekommen später eventuell Probleme, wenn etwas nicht funktioniert. Generell ist es am besten nach Anleitung des Entwicklers zu gehen und entsprechende notwendige Einträge (für die DS) anzupassen.

Ich nutze die Installation von Handy, also ohne Portainer. Eine Anleitung als Stack mit Portainer findet man bei Marius (siehe Beitrag #9) Dort würde ich jedoch Postgres auf die aktuellste Version (15) und Gotenberh (7.4) begrenzen bzw. festlegen. Nicht das es beim Update zu Problemen kommt. Gotenberg und Tika sind natürlich nur notwendig, wenn du Officedokumente in Paperless nutzen willst.
 

Monacum

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
03. Jan 2022
Beiträge
2.200
Punkte für Reaktionen
1.024
Punkte
224
Dort würde ich jedoch Postgres auf die aktuellste Version (15) und Gotenberh (7.4) begrenzen bzw. festlegen.
Das ist insofern wichtig @Rolandm1 als dass eine unter PostgreSQL < 15 erstellte Datenbank, bei mir in v14, nicht per se und ohne weiteres mit der v15 kompatibel ist.

Dazu in der Konfiguration (paperless.yml) einfach postgres:13 auf postgres:15 ändern, egal in welcher Anleitung.
 

Rolandm1

Benutzer
Mitglied seit
23. Nov 2013
Beiträge
57
Punkte für Reaktionen
4
Punkte
8
Danke für die Rückmeldung,

ich tue mich etwas schwer damit, schon mal rauszufiltern, was ist zwingend notwendig.
Es gibt Installationen ohne oder mit Portainer. Nehme ich eine Installation mit Portainer, mache ich mir eine weitere "Baustelle" auf, in die ich mich reinarbeiten muß.

Für erste Gehversuche hatte ich mich mal an der Anleitung https://www.mittelstedt.net/?p=200 entlang bewegt.
Funktioniert grundsätzlich und ich kann via Browser Dokumente hochladen.
Das war in sofern hilfreich, weil ich mich nicht erst mit der Thematik "ich baue mir einen Docker Container" beschäftigen mußte.
 

EDvonSchleck

Gesperrt
Mitglied seit
06. Mrz 2018
Beiträge
4.703
Punkte für Reaktionen
1.120
Punkte
214
@Monacum. ich bin bei @Rolandm1 von einer Neuinstallation ausgegangen im Gegensatz zu @depoo, welcher noch Paperless-ng verwendet.

Aber selbst bei einem Versionsupgrade sind die Daten ja nicht weg. Dann muss man halt nur die alte Datenbank installieren und ein Backup machen. Das ist bei Docker nicht wirklich ein Problem.

Warum hast du ein Problem mit wechseln von Postgres 14 auf 15?
 

Monacum

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
03. Jan 2022
Beiträge
2.200
Punkte für Reaktionen
1.024
Punkte
224
Das war in sofern hilfreich, weil ich mich nicht erst mit der Thematik "ich baue mir einen Docker Container" beschäftigen mußte.
Naja, das macht die Anleitung ja, dir einen Container zu bauen 😅
 

Monacum

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
03. Jan 2022
Beiträge
2.200
Punkte für Reaktionen
1.024
Punkte
224
Warum hast du ein Problem mit wechseln von Postgres 14 auf 15?
Wenn ich die Konfiguration anpasse, dass er beim nächsten Start nicht mehr Version 13 oder 14, sondern 15 lädt, dann führt das zu einer Dauerschleife von Neustarts beim Webserver und der Fehlermeldung im Log, dass die Datenbank in kompatibel ist.

Ich habe auch schon mal überlegt, ob ich einfach das Backup mache, ein Update durchführe und dann in das leere Programm wieder das Backup einspiele, auf der anderen Seite funktioniert aber Version 14 ohne Probleme und ich habe leider noch nicht herausgefunden, ob ich mit der Version 15 irgendwelche zusätzlichen Vorteile habe. Ist ein Projekt, welches ich aktuell in die Zukunft geschoben habe.

Letztendlich wäre der von mir beschriebene Weg ja eine neue Installation, ich muss ja einmal alle Daten aus Paperless entfernen, damit er nicht rummeckert.
 

Monacum

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
03. Jan 2022
Beiträge
2.200
Punkte für Reaktionen
1.024
Punkte
224
Für erste Gehversuche hatte ich mich mal an der Anleitung https://www.mittelstedt.net/?p=200 entlang bewegt.
Die sieht erst mal solide aus und wenn es bei dir funktioniert, umso besser. Eine Anmerkung an der Stelle allerdings, die separate Installation des Redis-Brokers ist nicht notwendig, das kann man auch über die Konfiguration steuern, dann wird der Broker erstellt, wenn man das erste Mal den Paperless-Container startet, wie @EDvonSchleck schreibt, so wie in der offiziellen Anleitung beschrieben.

Ich kann nach etwa einem halben Jahr Nutzung sagen, dass es Sinn macht, sich mit der Dokumentation und den ganzen variablen auseinander zu setzen, dann versteht man auf längere Sicht deutlich besser, was genau da passiert und welche Daten in dem ganzen Konstrukt von welchen anderen abhängen und was welche Einstellungen genau bewirken. Und dann kann man auch besser auf Probleme reagieren, sollten wirklich mal welche auftreten.

Der große Vorteil aus meiner Sicht von einer Installation mit Portainer ist der, dass man alle Änderungen, zum Beispiel Terminal-Befehle, Anpassungen an der yml etc., in einer Oberfläche machen kann. Aber ja, man muss sich auch damit erstmal auseinandersetzen. Kommt sicher auch drauf an, wieviele Container man damit verwaltet auf längere Sicht.
 

EDvonSchleck

Gesperrt
Mitglied seit
06. Mrz 2018
Beiträge
4.703
Punkte für Reaktionen
1.120
Punkte
214
Leider habe ich bei der Anleitung auch etwas auszusetzen:
  1. Ich würde die Container einem separaten Bridgenetzwerk (nicht Host) laufen lassen, somit können sich die Container untereinander sehen
  2. Der User sollte wissen, dass bei dieser Installation Sqlite benutzt wird, welches bei großen oder sehr großen Datenbanken leichte Performanceeinbußen hat, dafür aber leichter zu händeln ist. Sqlite kann einfach kopiert werden. Großartige Geschwindigkeitseinbußen habe ich nicht festgestellt, jedoch kann sich das mit der Größe der Datenbank ändern. Interessant ist hierbei, ob bereits eine andere Datenbank für andere Dienste läuft oder ob Paperless einfach nur ausprobiert werden will. Sqlite nutze ich auch für andere Anwendungen.
@Monacum, was deine Datenbank angeht, solltest du erst einmal ein Backup von dieser machen, danach die Datenbank neu aufsetzen, mit einem leeren Verzeichnis (vorher umbenennen) und das Backup wieder einspielen. Dafür kannst du einfach den Aufgabenplaner nutzen.

Backup erstellen:
Code:
docker exec postgres bash -c "pg_dumpall -U postgres > /var/lib/postgresql/data/backup/backup_v14.dump"
Backup einspielen:
Code:
docker exec postgres bash -c "psql -U postgres < /var/lib/postgresql/data/backup/backup_v14.dump"
 

Monacum

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
03. Jan 2022
Beiträge
2.200
Punkte für Reaktionen
1.024
Punkte
224
Ja das Thema hatten wir schonmal: Der Befehl funktioniert nur, wenn man PostgreSQL separat laufen hat, nicht, wenn das nur — wie in der offiziellen Anleitung und auch bei Marius — mit Paperless gestartet wird. Außerdem meldet ja Postgres, dass 14 und 15 inkompatibel zueinander sind. Aber bei gleicher Paperless-Version in der GUI kann ich auch einfach neu aufsetzen und das Paperless-Update einspielen.
 


 

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