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

EDvonSchleck

Gesperrt
Mitglied seit
06. Mrz 2018
Beiträge
4.703
Punkte für Reaktionen
1.120
Punkte
214
In dem Ordner solltest du den gleichen Aufbau finden. Siehe: /volume1/docker/paperlessngx/data
Was es mit dem Ordner /config auf sich hat, kann ich nicht sagen, da ich deren Inhalt nicht kenne bzw. wofür dieser genutzt wurde. Das ist das Problem mit den unterschiedlichen Anleitungen. Du kannst aber im Container unter Volumen nachsehen, wohin dieser gemountet wurde. Notfalls machst du ein Screenshot davon.
 

Monacum

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
03. Jan 2022
Beiträge
2.200
Punkte für Reaktionen
1.024
Punkte
224
/config ist bei mir nicht irgendwohin gemountet, nur die „üblichen“ Verdächtigen:
Code:
../data:/usr/src/paperless/data
../media:/usr/src/paperless/media
../export:/usr/src/paperless/export
../consume:/usr/src/paperless/consume
Und /data ≠ /config. Liegen .env und .yml bei Dir in /data, @EDvonSchleck?
 

depoo

Benutzer
Mitglied seit
28. Dez 2020
Beiträge
15
Punkte für Reaktionen
0
Punkte
1
Das ist schlecht, das befindet sich innerhalb des Ordners.
Kann es sein, dass dies in den Redisordner gehört?
 

Anhänge

  • Bildschirmfoto 2023-01-03 um 18.52.21.png
    Bildschirmfoto 2023-01-03 um 18.52.21.png
    148,3 KB · Aufrufe: 17
Zuletzt bearbeitet:

EDvonSchleck

Gesperrt
Mitglied seit
06. Mrz 2018
Beiträge
4.703
Punkte für Reaktionen
1.120
Punkte
214
Dann schau doch in den Container unter den Volumen nach – kann ja nur bei Paperless oder Redis sein.
Was ist im Ordner enthalten?
 

depoo

Benutzer
Mitglied seit
28. Dez 2020
Beiträge
15
Punkte für Reaktionen
0
Punkte
1
Ich habe lediglich die beiden Ordner und kein zusätzliches Redis oder dergleichen Installiert.
Dies scheint in der Installation als solches enthalten gewesen zu sein. Siehe Bilder
 

Anhänge

  • Bildschirmfoto 2023-01-03 um 19.48.41.png
    Bildschirmfoto 2023-01-03 um 19.48.41.png
    92,3 KB · Aufrufe: 22
  • Bildschirmfoto 2023-01-03 um 19.50.15.png
    Bildschirmfoto 2023-01-03 um 19.50.15.png
    145,3 KB · Aufrufe: 22

EDvonSchleck

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

Bildschirmfoto 2023-01-03 um 19.48.41.png

./data = /config
./media = /data/media
./consume = /data/consume

Beeande bitte den Paperless-Container und gehe auf bearbeiten > Volumen-Einstellungen und poste einmal die mounts.
 
Zuletzt bearbeitet:
  • Like
Reaktionen: Caramlo

depoo

Benutzer
Mitglied seit
28. Dez 2020
Beiträge
15
Punkte für Reaktionen
0
Punkte
1
Anbei die mounts
 

Anhänge

  • 2023-01-03 21_12_56-Window.png
    2023-01-03 21_12_56-Window.png
    15,3 KB · Aufrufe: 28

EDvonSchleck

Gesperrt
Mitglied seit
06. Mrz 2018
Beiträge
4.703
Punkte für Reaktionen
1.120
Punkte
214
In /data findest du media mit den Files und consume? /config entspricht nachher /data. Somit musst du nur die Inhalte kopieren. Wichtig ist, dass du die beiden Ordner sicherst.

Wenn du Paperlessngx installiert hast, du das erste Mal gestartet ist, wirst du Gemeinsamkeiten erkennen.
 

depoo

Benutzer
Mitglied seit
28. Dez 2020
Beiträge
15
Punkte für Reaktionen
0
Punkte
1
Leicht verwirrend. Aber okay. Ich sichere die beide Ordner gleich einmal auf einem anderen Laufwerk ab und lösche Docker von beiden Volumina.
Ergibt es zukünftig auch Sinn, wenn man auf eine andere Datenbank wechselt ?
 

EDvonSchleck

Gesperrt
Mitglied seit
06. Mrz 2018
Beiträge
4.703
Punkte für Reaktionen
1.120
Punkte
214
Da du bereits eine Datenbank hast, ist der Arbeitsaufwand jetzt genauso viel wie später, es sei denn du willst komplett neu anfangen.
Ich würde es erst einmal auf ngx bringen und dann ggf. konvertieren. Letztendlich kommt ja nur ein Container dazu. Das größte Problem ist das Konvertieren deiner alten Datenbank zu deiner neuen. Wenn du die Exportfunktion nutzt, kann man auf ein anderen DMS wechseln.
 

depoo

Benutzer
Mitglied seit
28. Dez 2020
Beiträge
15
Punkte für Reaktionen
0
Punkte
1
Es hat alles funktioniert. Danke!! Ich probiere mich jetzt ein wenig mit paperless-ngx aus. Wichtig sind mir die Backups. Ich nehme mal an, es reicht aus, wenn die Ordner /docker/paperlessngx und docker/paperlessngx absichert oder sehe ich das falsch? Gibt es bessere alternativen? Erst wenn auch dieser Schritt erfolgreich abgeschlossen ist, traue ich mich an eine andere Datenbank heran. Auch weil ich Zukünftig weitere Datenbanken installieren werde. Lohnt es sich hierbei auf eine einheitliche zu gehen?
 

EDvonSchleck

Gesperrt
Mitglied seit
06. Mrz 2018
Beiträge
4.703
Punkte für Reaktionen
1.120
Punkte
214
Ich nehme mal an, es reicht aus, wenn die Ordner /docker/paperlessngx und docker/paperlessngx absichert oder sehe ich das falsch?
Das sind für mich 2 gleiche Ordner. Der /paperlessngx in /docker reicht aus. Dort ist aktuell alles enthalten. Das Backup kannst du als Aufgabe machen oder direkt in Hyperbackup.
Auch weil ich Zukünftig weitere Datenbanken installieren werde. Lohnt es sich hierbei auf eine einheitliche zu gehen?
Ja ich würde alles in einer zentralen Datenbank machen. Der Vorteil bei SQLite ist, dass du die Datenbank einfach kopieren kannst als File. Bei den anderen Datenbaken wird es komplizierter. Dort erfolgt das Backup meist über die Konsole oder einer Anwendung.

Viel Spaß beim Testen und Probieren.
 

Rolandm1

Benutzer
Mitglied seit
23. Nov 2013
Beiträge
57
Punkte für Reaktionen
4
Punkte
8
Mein Login Problem ist erst mal "gelöst".

Ich habe noch eine DS716+ als "Testumgebung" dastehen.
Dies habe ich nochmal neu aufgesetzt, um wirklich auf der grüner Wiese anzufangen.

Ich habe zum Einstig dann die Anletung von marius genommen, um erst mal ein Gefühl dafür zu bekommen.

Zunächst bin ich wieder auf das gleiche Login Problem gestossen.

Es hängt mit meinem Passwort zusammen.
Ich habe dann mal den container (paperlessngx) angehalten, und mir angeschaut, was als Passwort hinterlegt ist.

Üblicherweise verwende ich eher längere und komplexere Passwörter. Dazu gehört auch, dass mittendrin schon mal ein Sonderzeichen verwendet wird.

Im Container ist das passwort zwar eingetragen, aber sowohl das Sonderzeichen un dalles danach fehlen.

Wenn ich beim login dann dieses Passwort verwende geht es.
Muß ich mal in die Doku reinschauen.
 

depoo

Benutzer
Mitglied seit
28. Dez 2020
Beiträge
15
Punkte für Reaktionen
0
Punkte
1
Ich meinte /paperlessngx und /redis sorry.

Danke für deinen Hinweis, werde ich mittels Hyperbackup absichern.
 

EDvonSchleck

Gesperrt
Mitglied seit
06. Mrz 2018
Beiträge
4.703
Punkte für Reaktionen
1.120
Punkte
214
Wenn du mehre Container hast, und da gibt es eine gute Auswahl wie z. B. Vaultwarden (Bitwarden) kannst du auch einfach den /docker Ordner sichern. Dann sind alle Container, sofern sie richtig gemountet sind, gesichert. Mit Watchtower aktualisierst du die Container automatisch.
 

depoo

Benutzer
Mitglied seit
28. Dez 2020
Beiträge
15
Punkte für Reaktionen
0
Punkte
1
Ich nutze zusätzlich noch Vaultwarden und zukünftig noch Pi-Hole und weitere kleinere Instanzen. Alles soll über portainerverwaltet werden.
Die Instanz Watchower ist eine super Idee. Erkennt diese Instanz denn auch wenn der Stack bspw. von aperless-ngx inkompatibilitäten ausweist und führt das Update nicht aus ?

Die Konfigurationen also alles das was man in die Aufgabenplanung eintippt speichert ihr einfach so ab ? Weil im Endeffekt ändert sich daran ja nicht so viel.
 

EDvonSchleck

Gesperrt
Mitglied seit
06. Mrz 2018
Beiträge
4.703
Punkte für Reaktionen
1.120
Punkte
214
Watchtower wechselt ja nur die die Images aus, die unter einem Tag geführt werden und löscht die alten.
Als bessere Pi-Hole empfehle ich dir AdGuard home.

Ja kannst du einfach für dich als Text-Datei weg sichern. Kannst aber auch deine Einstellungen der Container exportieren. Das geht in der GUI oder als Script (SSH/Eingabeaufforderung). Diese Datei kann man importieren und es ist alles wieder hergestellt.

Portainer nutze ich nicht. Völlig überbewertet. Auch bei Paperless installiere ich alle Container alleine.

Probiere es einfach alles einmal aus!
 

Monacum

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
03. Jan 2022
Beiträge
2.200
Punkte für Reaktionen
1.024
Punkte
224
@Monacum ich bin mit deinem Backup für die Datenbank noch nicht ganz durch. In der Synology Docker GUI hast du einen Postgres-Container? Wie heißt dieser genau und ist dieser gestartet bzw. kannst du diesen starten?
Also, ich habe mittlerweile drei Möglichkeiten für mich gefunden, ein Back-up durchzuführen, welches dann auch in letzter Konsequenz wieder genutzt werden kann, wenn ich eine Instanz neu aufgesetzt habe:
  1. Backup durch Kopieren der gemappten Ordner im Docker-Laufwerk
  2. Backup mit der mitgelieferten Funktion von Paperless
  3. Backup der PostgreSQL-DB mit pgdump
Was leider alle drei Möglichkeiten gemeinsam haben: es führt zu einem Fehler und ständigen Neustart des Webservice, sowie des Paperless-Containers, wenn ich mit einem Back-up von PostgreSQL 14 auf 15 gehe — alle anderen Updates, beispielsweise von 13 auf 14, waren überhaupt kein Problem. Folgende Fehlermeldungen bekomme ich dabei:

Kopie wieder einspielen​

Es starten alle drei Container, dann gibt es ein Problem mit der Verbindung zwischen Webserver und Database und die beiden sind dann in einer Dauerschleife von Neustarts gefangen. Das Log von PostgreSQL wirft folgende Fehlermeldung aus, die vollständige Fehlermeldung des letzten Eintrages weist darauf hin, dass 14 mit der verwendeten Version 15.1. inkompatibel ist:

postgres15error.png

Paperless-Exporter/-Importer​

Ich beginne mit leeren Ordnern /data /media /pgdata und starte das ganze, was auch super funktioniert. Danach setze ich mit docker-compose run --rm webserver createsuperuser einen neuen Admin und starte die Wiederherstellung aus dem vorhandenen Ordner /export mit dem Befehl sudo docker-compose exec webserver document_importer ../export (alles unter cd /volume1/docker/paperlessngx/config/ im Mac-Terminal via SSH). Wenn es den Benutzernamen bereits in der „alten“ Datenbank gibt, erhalte ich den Fehler:
Code:
django.db.utils.IntegrityError: Problem installing fixture '/usr/src/paperless/src/../export/manifest.json': Could not load auth.User(pk=2): duplicate key value violates unique constraint "auth_user_username_key"
DETAIL:  Key (username)=(monacumngx) already exists.
ERROR: 1
Kein Ding, dann benenne ich den Benutzer in der GUI mal eben um, dann erhalte ich aber folgenden Fehler:
Code:
django.db.utils.IntegrityError: Problem installing fixtures: insert or update on table "auth_group_permissions" violates foreign key constraint "auth_group_permissio_permission_id_84c5c92e_fk_auth_perm"
DETAIL:  Key (permission_id)=(101) is not present in table "auth_permission".
was ich nicht weiter deuten kann, vielleicht kannst du oder jemand anderes mir hier weiterhelfen?

pgdump​

Ja last but not least habe ich auch das hinbekommen mit deinem Befehl. Er erstellt mir ohne Mucken den Dump nach deiner Anleitung, ein Einspielen in ein leeres Paperless führt aber zu ähnlichen Fehlern wie beim Einspielen der „reinen“ Kopie.

Es scheint also irgendeine Art von Inkompatibilität innerhalb der erstellten Datenbank zu geben, bei der ich aktuell keine Idee habe, wie ich sie, beispielsweise mit einem entsprechenden Befehl, beheben kann. Ich habe dazu die Tage auch schon mal im Internet gelesen, da geht es aber Immer nur darum, generell die Datenbank zu updaten, ohne einen speziellen Bezug zu Paperless. Paperless-ngx an sich funktioniert aber – wenn man es neu baut – bei mir auch mit PostgreSQL 15.1 sonst ohne Probleme. Vielleicht hat ja jemand hier noch Ideen oder sieht meinen Fehler.
 

Adama

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
05. Mrz 2013
Beiträge
2.152
Punkte für Reaktionen
740
Punkte
154
Das ist normal bei einem Major-Wechsel von Postgresql. Alle Anleitungen die ich gefunden hab, sagen mehr oder weniger das selbe:
Dumpen der alten Datenbank, neue leere Datenbank in der neuen Version hochziehen und dann den Dump importieren. Dann wieder mit der Anwendungen verknüpfen.

Deswegen ist der Standard in den Compose-Files von Paperless nicht "latest" sondern eine feste Version, damit bei einem Update nur in dem Versions-Strang upgedatet wird.

Du kannst natürlich auch MariaDB (MySQL) nutzen, da bin ich bisher nicht auf das Problem gestossen.
 

EDvonSchleck

Gesperrt
Mitglied seit
06. Mrz 2018
Beiträge
4.703
Punkte für Reaktionen
1.120
Punkte
214
Ich habe einfach ein Dump gemacht, anschließend Postgres upgedatet und einen neuen Ordner genommen bzw. den alten Ordner geleert. Danach das Backup eingespielt und alles war wieder da. In unterschiedlichen Containern. Ich habe noch nicht einmal die Container abgestellt. ;)
 


 

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