Paperless ngx 1.13.00 – Updates und Barcodes

Von: Torsten
Veröffentlicht: Zuletzt aktualisiert am: 9 minutes read
Paperless-ngx Version 1.13.00 erschienen - Meine Erfahrungen mit dem Update

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.

Sale
Brother ADS1700WUN1 Kompakter Dokumentenscanner Mobiler Scanner, Duplex WLAN, Weiß, Schwarz, A4 **
  • 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.
Kein neues Feature, eher eine Aktualisierung der Komponenten ist die neue Kompatibilität mit Gotenberg 7.8. In meiner bisherigen Konfiguration nutzte ich bisher Gotenberg 7.4, da die 7.6 Version einfach nicht laufen wollte. Mit Paperless -ngx 1.13.00 läuft nun alles smooth auch mit der Version 7.8. Dazu muss zwingend die Stack-Konfiguration in Portainer um folgende Zeilen aktualisiert werden:
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

Version 1.12.00 von Paperless-ngx führte eine interessante Neuerung ein. Denn nun ist es möglich, sogenannte ASN Barcodes auf die Dokumente anzubringen. Die ASN Barcodes können verschiedene Formate haben. Sie werden oft mit Standard-Barcode-Technologien wie Code 128 oder Data Matrix kodiert, um eine schnelle und zuverlässige Lesung durch Barcode-Scanner bzw. Paperless zu ermöglichen.
Im Blogpost über unseren Workflow hatten wir die Archivseriennummer (ASN) Funktionalität bereits erläutert. Diese führen später dazu, dass ihr eure Dokumente in einem Ordner schnell wiederfinden könnt. Die Idee dahinter: Ihr notiert die ASB Nummer auf den Dokumenten, die noch physisch archiviert werden müssen. Die gleiche ASN wird in Paperless-ngx hinterlegt. Sucht ihr später ein Dokument im Original, wird zu erst in Paperless die ASN gesucht und diese dann im Ordner aufgespürt.
Phomemo M220 Etikettenhersteller, tragbarer Drucker, Bluetooth Thermoetikettendrucker für Barcodes, Name, Adresse für Büro Zuhause, kompatibel mit Telefonen und PC Orange **
  • 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:

  1. Ein Barcode- bzw. Labeldrucker um die ASN Barcodes zu drucken.
  2. 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:

  1. Öffnet Portainer, indem ihr euch anmeldet und wechselt direkt in den Bereich Containers.
    Portainer: Paperless-ngx Container finden

    Portainer: Paperless-ngx Container finden

  2. In der Übersicht der Container muss nun der Container für Paperless-ngx ausgewählt werden, indem auf den Namen geklickt wird.
    Portainer: Paperless-ngx Container auswählen

    Portainer: Paperless-ngx Container auswählen

  3.  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.

    Portainer: Paperless-ngx Image Recreate

    Portainer: Paperless-ngx Image Recreate

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.

Portainer: Paperless-ngx Container finden


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.
    Dump.rdb von Redis löschen

    Dump.rdb von Redis löschen

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 🙂 

Was bedeuten die ** hinter den Links?

** = Amazon Affiliate Links
Das bedeutet, dass wenn ihr diese Amazon Links besucht und ein Produkt egal welcher Art kaufen solltet, ich einen kleinen Teil als Werbekosten erstattet bekomme. Die Produkte werden dadurch nicht teurer und ihr bezahlt nicht mehr Geld.

Weitere spannende Artikel

11 Kommentare

Dirk 5. März 2023 - 22:37

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

Antworten
Torsten 6. März 2023 - 21:43

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

Antworten
Dirk 12. März 2023 - 14:44

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.

Antworten
Torsten 13. März 2023 - 21:05

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#

Antworten
Dirk 20. März 2023 - 16:43

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.

Antworten
Dave Phi 13. März 2023 - 19:27

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 ?

Antworten
Torsten 13. März 2023 - 20:55

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.

Antworten
Marcus 18. Mai 2023 - 12:07

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.

Antworten
Mario Monti 7. November 2023 - 19:26

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) 🙂

Antworten
Frederik 30. Januar 2024 - 21:02

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?

Antworten
Torsten 19. Februar 2024 - 9:07

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”

Antworten

Leave a Comment

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.