Vornweg: Dies ist kein gesponserter Beitrag und ich bekomme dafür auch kein Geld. Im Beitrag sind Links zu Amazon enthalten, bei denen es sich um affilate Links handelt. Dadurch könnt ihr mich unterstützen.
Werbung
Letzte Woche wurde Paperless-ngx in der Version 1.13.00 veröffentlicht. Dieses Release stellt schon das fünfte Update Release in diesem Jahr dar, was meine Entscheidung, unser papierloses Büro auf Paperless-ngx umzustellen, nur bestätigt. Es ist schön zu sehen, dass dieses Projekt so aktiv weitergeführt wird. Über meine Erfahrungen mit Paperless-ngx und unseren Workflow könnt ihr euch in den letzten beiden Blogeinträgen informieren:
Ich gebe zu, ich bin jemand, der sofort updatet, sobald eine neue Version angeboten wird. Das funktioniert in der Regel auch relativ problemlos – nur diesmal lief Paperless nicht mehr rund nach dem Update. Wie ich das wieder in den Griff bekommen habe, berichte ich den folgenden Kapiteln.
- Scangeschwindigkeit von bis zu 25 Seiten (50 Bilder) pro Minute
- Automatischer 20 Blatt Vorlageneinzug für mehrseitiges Scannen
- WLAN, USB 3.0 Super-Speed-, USB 2.0 Hi-Speed-Schnittstelle und USB-Host
- 7, 1 cm Touchscreen-Farbdisplay mit 20 programmierbaren Favoriten
- TWAIN, WIA, ICA und SANE für optimale Kompatibilität
Was ist neu in Paperless -ngx 1.13.00?
- Warnungen beim Verlassen einer gespeicherten Ansicht können deaktiviert werden.
- Option zur Aktivierung der Antwortkomprimierung wurde hinzugefügt. Damit kann die Reaktionsgeschwindigkeit der UI optimiert werden, wenn mit großen Dokumenten gearbeitet wird. Um diese Option zu nutzen, muss die folgende Environment Variable gesetzt werden:
PAPERLESS_ENABLE_COMPRESSION=<bool>
- Dokumente können nun gesplittet (geteilt) werden, sobald ein ASN Barcode erkannt wird. Dieses Feature ist in der Tat eine konsequente Erweiterung eines Features, was mit Version 1.12.00 eingeführt wurde. Dazu mehr im Kapitel “Barcodes seit Version 1.12.00”. Kurze Erklärung: Nutzt ihr die neue ASN Barcode Funktion, so kann dieses Feature dazu genutzt werden, um PDF Dokumente immer dann zu splitten, sobald ein neuer Barcode erkannt wurde.
gotenberg:
image: gotenberg/gotenberg:7.8
restart: always
container_name: gotenberg
ports:
- 3044:3000
- 3000:3000
command:
- 'gotenberg'
- '--chromium-disable-javascript=true'
- '--chromium-allow-list=file:///tmp/.*'
Das komplette Changelog kann hier eingesehen werden.
Die neue Barcode Option seit Paperless -ngx 1.12.00
- Bluetooth Etikettendrucker: Verwenden Sie Tinte, Toner und Farbband nie wieder. Phomemo M220 Barcodedrucker druckt mit Thermotechnologie, was bedeutet, dass Sie nur Etiketten auffüllen müssen. Der Thermoetikettendrucker wird mit 100pcs 40x30mm Etikettenbändern geliefert
- Die 2200 mAh Batterie bietet bis zu 36 Rollen kontinuierlichen Drucks, einen neu hinzugefügten Auto-Sleep-Modus, der den Stromverbrauch um 25% reduzieren und die Nutzungszeit um 2-3 Stunden verlängern kann
Genau hier greift das Barcode-Feature aus Version 1.12.00. Denn nun kann die ASN als Barcode Aufkleber direkt auf dem Dokument angebracht werden. Beim Scannen erkennt Paperless-ngx diesen und trägt die ASN direkt als Metadatum ein.
Um das Feature nutzen zu können, müssen folgende Variable gesetzt werden:
PAPERLESS_CONSUMER_ENABLE_ASN_BARCODE=true
PAPERLESS_CONSUMER_ASN_BARCODE_PREFIX=ASN
Zeile 1 aktiviert die Barcodeerkennung zur Erkennung der Archivseriennummer. Zeile 2 definiert den Präfix, welcher erkannt werden muss, um Paperless mitzuteilen, dass es sich hierbei um die ASN Variable handelt. Der Präfix muss nicht zwingend mit ASN starten, wobei irgendein Präfix konfiguriert sein muss. Dadurch sehe ich zwei Möglichkeiten die Barcodes auf die Seiten zu bringen:
- Ein Barcode- bzw. Labeldrucker um die ASN Barcodes zu drucken.
- Vorgefertigte Barcode Labels auf der Rolle. Hier müsste man jedoch Labels wählen, auf denen man einen Präfix wählen kann.
Barcode Neuerung mit Paperless -ngx Version 1.13.00
Version 1.13.00 bringt hier nun noch eine Erweiterung zur Barcode-Funktionalität. Denn nun können Dokumente immer dann gesplittet werden, sobald ein neuer ASN Barcode erscheint. Das mag recht nützlich erscheinen, wenn große Mengen an Dokumenten gescannt werden, ohne Pause einzulegen. Für unseren Workflow wird das nicht sonderlich nützlich sein, da der Brother ADS-1700W Dokumentenscanner ohnehin nicht größere Mengen an Dokumenten in seiner Zufuhr verarbeiten kann. Als reine Usability Ergänzung zum ASN Barcode Feature ist es aber ein nützliche Ergänzung sofern man in der Lage ist, größere Mengen gleichzeitig zu scannen.
Paperless -ngx via Portainer auf Version 1.13.00 updaten
Die gesamte Konfiguration unserer Paperless-ngx Installation setzt auf Docker Images, welche auf der Synology Diskstation ausgeführt werden. Als Docker Management Tool wird Portainer eingesetzt, was die Wartung der Container sehr einfach und komfortabel macht.
Um Paperless-ngx via Portainer auf die aktuellste Version zu updaten, müssen folgende Schritte befolgt werden:
- Öffnet Portainer, indem ihr euch anmeldet und wechselt direkt in den Bereich Containers.
- In der Übersicht der Container muss nun der Container für Paperless-ngx ausgewählt werden, indem auf den Namen geklickt wird.
- Nun muss der Container gestoppt werden und über den Befehl “Recreate” neu erstellt werden. Nach dem Klick auf “Recreate” öffnet sich ein Dialog. Hier muss nun unbedingt der Schalter für Re-pull image aktiviert werden. Das hat jedoch nur einen Effekt, wenn als Image:
"image: ghcr.io/paperless-ngx/paperless-ngx:latest"
eingetragen wurde. Wurde hier eine feste Version angegeben, wird natürlich immer wieder das gleiche Image verwendet.
Plötzlich verarbeitet Paperless -ngx keine Dokumente aus der Queue mehr
Das Update von Paperless-ngx auf die Version 1.13.00 lief augenscheinlich problemlos. Das heißt, dass erst einmal alles wieder angezeigt wurde und auch die Dokumente geladen wurden. Ein kurzer Test des Dokumenten-Uploads verlief jedoch nicht ganz wie gedacht. Nach dem Upload befanden sich alle Dokumente in der Warteschlange, wollten aber einfach nicht in den Status “gestartet” wechseln. Im Django Administrationspanel sah man, dass die Paperless Tasks im Status “PENDING” festhingen. Das Löschen aller Aufträge in Django half auch nicht.
Abhilfe – Anpassen der Redis Konfiguration
Paperless nutzt für die Kommunikation zwischen Webserver und Task Scheduler einen Broker namens Redis. Das bedeutet, dass dieser Service essenziell für reibungslose Abarbeitung der Dokument Aufgaben in Paperless zuständig ist. Und hier habe ich auch die Probleme vermutet. Also habe ich folgende Dinge getan, die dazu führten, dass der Paperless-ngx Task Scheduler wieder lief. Natürlich wird nur einer der Punkte zur Lösung beigetragen haben, aber führt gerne alle aus.
- Update der Paperless-ngx Redis Konfiguration. Bisher habe ich Version 6.2 verwendet und nun auf Redis 7 aktualisiert. Dazu muss die Stack Konfiguration von Portainer durch folgende Konfiguration ersetzt werden.
Die Restart Policy von Docker habe ich auf “unless-stopped” geändert, damit die Container immer neu starten, außer ihr stoppt diese von Hand. - In einer Community hatte ich gelesen, dass es helfen kann, die UserId (PUID) von Redis auf die ID setzen, die in Paperless verwendet wird. Das habe ich auch getan, indem ich diese als ENV Variable gesetzt habe.
redis:
image: redis:7
container_name: paperless-redis
restart: unless-stopped
volumes:
- /volume1/docker/paperedis:/data
- Nun der Tipp, der vermutlich zum Erfolg führte. Dazu muss die Redis Datenbank gelöscht werden. Wechselt in die Portainer Container Verwaltung und stoppt den Redis Container. Anschließend öffnet die Synology DiskStation Oberfläche und löscht die “dump.rdb” Datei von Redis. Zuletzt habe ich alle Container noch einmal neu gestartet und der Task Scheduler von Paperless -ngx lief wieder einwandfrei.
Fazit: Manchmal doch vorsichtig beim Update sein
Das Fazit ist natürlich leicht gesagt – denn dazu update ich zu gerne 🙂 Zumindest sollte man die Updates nicht zwischen Tür und Angel durchführen. Auf der anderen Seite zeigte es mir aber auch, wie robust die Docker Images sind. Als Nächstes werde ich jedoch eine Backup Strategie für Paperless -ngx anlegen 🙂
11 Kommentare
Hi,
vielen Dank für den Hinweis auf das update, das habe ich auch gerade nachgezogen. Bei mir macht das im Moment noch keine Probleme, ich werde berichten. Aber nach wie vor zerbreche ich mir den Kopf, warum die Verarbeitung der office-Dokumente mit Gotenberg nicht läuft. Ich kriege da immer einen Error while converting document to PDF: 400 Client Error: Bad Request for url: http://gotenberg:3000/forms/libreoffice/convert#/forms/libreoffice/convert – das sieht nach Problemen bei der Übergabe des Dokuments aus. Hast Du vielleicht ne Idee?
Liebe Grüße
Dirk
Hey Dirk,
auch mit Gotenberg 7.8?
– Endpoint richtig gesetzt? -> PAPERLESS_TIKA_GOTENBERG_ENDPOINT: http://gotenberg:3000/forms/libreoffice/convert#
– Ports freigegeben ?
ports:
- 3044:3000
- 3000:3000
Hi Torsten,
folgendes Setup habe ich eingerichtet:
Redis:7
Gotenberg:7.8
paperperless:latest
PAPERLESS_TIKA_GOTENBERG_ENDPOINT: http://gotenberg:3000 (ich hatte auch die längere Version ausprobiert, geht auch nicht)
Gotenberg Ports
– 3044:3000
– 3000:3000
Alles in einem eigenen Netzwerk. Folgende Fehlermeldung:
[ERROR] [paperless.consumer] Error while consuming document xxx.docx: Error while converting document to PDF: 503 Server Error: Service Unavailable for url: http://gotenberg:3000/forms/libreoffice/convert
Das beschäftigt mich jetzt schon 3 Wochen. Inzwischen habe ich mir einen Workaround gebaut und drucke mit Kurzbefehl ein pdf in den consumer folder.
Hast du den command:
– ‘gotenberg’
– ‘–chromium-disable-javascript=true’
– ‘–chromium-allow-list=file:///tmp/.*’
gesetzt?
Die 503 Fehlermeldung sollte durch setzen der langen Variante (inkl. # am Ende) verschwinden.
http://gotenberg:3000/forms/libreoffice/convert#
Ja, das hab ich alles schon probiert. Da kommt immer 503. Aber wie gesagt, das tut mir nicht weh, mir reichen die pdfs völlig aus.
Hi!
Greate overview of the new features! But i cant get any datamatrix barcodes recognized by the 1.13 paperless-ngx version.
I’ve checked the source code and they use the pyzbar dependency to read barcode. But this lib can only read 1D barcode and QRCode. But no datamatrix as you mention. Did you do something special to enable datamatrix barcode ?
Hey Dave,
i’m sorry, the sentence in which I mentioned Data Matrix actually only refers to the explanation of how ASN numbers are usually encoded in physical document management. I also only tested it with standard barcodes.
Danke für den Tipp zum Löschen der Dump.rdb!
Hat mir gerade den A…. gerettet als meine Paperless instanz keine Dokumente mehr verarbeiten wollte.
Hallo Torsten,
vielen vielen Dank für diese drei Erfahrungsberichte zu paperless-ngx!
Ich bin ziemlich am Anfang und habe über google diese Seite gefunden, und bin einfach nur happy.
Habe meine paperless-ngx Installation auf einer DS923+ ebenfalls in Docker laufen (mit Portainer).
Deine Berichte helfen mir immens, zu verstehen, wie ich das auch für mich privat und meine kleine GmbH umsetzen kann. Richtig, richtig gut; sehr verständlich und klar geschrieben von Dir.
DANKE!
PS:
Über weitere Erfahrungsberichte von Dir würde ich mich mega freuen!
Insbesondere die config-Files wären sehr interessant (.env /. yml) 🙂
Hallo Torsten,
ich bin sehr daran interessiert, wichtige Dokumente mit einer ASN zu versehen – so wie du es oben beschrieben hast. Ich habe mir die Labels von deinem Link bestellt und eben mit ASN00001 getestet.
Meine docker-compose.yml habe ich folgendermaßen erweitert (die letzten beiden Einträge)
environment:
PAPERLESS_REDIS: redis://broker:6379
PAPERLESS_DBHOST: db
PAPERLESS_TIKA_ENABLED: 1
PAPERLESS_TIKA_GOTENBERG_ENDPOINT: http://gotenberg:3000
PAPERLESS_TIKA_ENDPOINT: http://tika:9998
PAPERLESS_CONSUMER_ENABLE_BARCODES: true
PAPERLESS_CONSUMER_ENABLE_ASN_BARCODE: true
PAPERLESS_CONSUMER_ASN_BARCODE_PREFIX: ASN
Paperless reagiert allerdings nicht mit einer automatisch vergebenen ASN… ich kann sie manuell zuteilen… aber das ist ja so nicht gedacht.
Kannst du mir weiterhelfen?
Hallo Frederik,
vielleicht war/ist es ein Bug. Dazu gab es mittlerweile einen Fix -> https://github.com/paperless-ngx/paperless-ngx/pull/5740 “Fix: Splitting on ASN barcodes even if not enabled”