Da geht es nicht, um das abraten, sondern darum, dass die mit den Exporter exportierten Dokumente alleine nicht reichen, sondern du eben auch die Datenbank noch einmal exportieren musst. Oder, das ist auch möglich, du sicherst den kompletten Ordner vom Docker-Container.
Wobei da ja auch ein, ich meine json, file bei liegt was die Tags etc. beinhaltet. Ich werde die Tage mal ein paar VMs aufsetzen und den import via document_importer sowie die hier gezeigte Backup und Import Routine testen.
Die Sicherung vom Docker-Container hat eben den Nachteil, dass ich dafür den Container beenden muss. Da paperless allerdings nur lokal und nicht nachts genutzt wird, könnte man das natürlich auch nachts automatisieren. Und wenn man eben schon live ein DB Backup machen kann, versuche ich natürlich erst einmal diese Möglichkeit.
Das kann schon gut sein, weil halt die Verknüpfungen in der Datenbank fehlen. Wie gesagt, das ist ein Zusammenspiel zwischen der Datenbank und dem Ablageort der Dokumente, wenn eines nicht verfügbar ist, kein Paperless auch nichts damit anfangen.
S.o., wahrscheinlich muss ich das noch einmal mit einer frischen Installation testen, es war aber definitiv so dass medien und db die korrekte Version waren. Oder es lag an dem fehlenden backup von anderen Ordnern,
Mein Workflow war wie beschrieben wie folgt. Zunächst definiere ich einmal Z1 als Zustand von dem das Backup erstellt wurde, welches ich wiederherstellen möchte und Z2 als geänderten Zustand, nach dem Backup. Dieser soll dann durch Z1 ersetzt werden:
Code:
myusername@ubuntu-tn:~$ sudo docker exec paperless-db-1 pg_dumpall -U paperless > /home/myusername/scriptest/pg_dumpall.dump
myusername@ubuntu-tn:~$ sudo rclone copy /var/lib/docker/volumes/paperless_media/ /mnt/remote/paperless-media
2023/02/19 14:12:28 NOTICE: Config file "/root/.config/rclone/rclone.conf" not found - using defaults
myusername@ubuntu-tn:~$ sudo rclone copy /var/lib/docker/volumes/paperless_data/ /mnt/remote/paperless-data
2023/02/19 14:12:36 NOTICE: Config file "/root/.config/rclone/rclone.conf" not found - using defaults
Hier sind wir uns erstmal einig, media, data und die Datenbank liegen mir nun als Z1 in einem backup Ordner vor.
Nun ändere den Zustand von Z1 auf Z2. Nicht dargestellt aber unter neuem Namen wird ein neues Backup der DB erstellt, das defintiv von Z1 verschieden ist. Also ist die Datenbank nachdem löschen von einem Dokument anders. Das passt soweit.
Code:
myusername@ubuntu-tn:~$ sudo rclone copy /mnt/remote/paperless-media/ /var/lib/docker/volumes/paperless_media/
[sudo] password for myusername:
2023/02/19 14:27:46 NOTICE: Config file "/root/.config/rclone/rclone.conf" not found - using defaults
myusername@ubuntu-tn:~$ sudo rclone copy /mnt/remote/paperless-data/ /var/lib/docker/volumes/paperless_data/
2023/02/19 14:27:50 NOTICE: Config file "/root/.config/rclone/rclone.conf" not found - using defaults
2023/02/19 14:27:50 NOTICE: _data/celerybeat-schedule.db: Removing partially written file on error: can't copy - source file is being updated (mod time changed from 2023-02-19 14:10:00.0462416 +0100 CET to 2023-02-19 14:27:50.8609268 +0100 CET)
2023/02/19 14:27:50 ERROR : _data/celerybeat-schedule.db: Failed to copy: can't copy - source file is being updated (mod time changed from 2023-02-19 14:10:00.0462416 +0100 CET to 2023-02-19 14:27:50.8609268 +0100 CET)
2023/02/19 14:27:50 ERROR : Attempt 1/3 failed with 1 errors and: can't copy - source file is being updated (mod time changed from 2023-02-19 14:10:00.0462416 +0100 CET to 2023-02-19 14:27:50.8609268 +0100 CET)
2023/02/19 14:27:50 ERROR : Attempt 2/3 succeeded
myusername@ubuntu-tn:~$ sudo rclone copy /mnt/remote/paperless-data/ /var/lib/docker/volumes/paperless_data/
2023/02/19 14:28:15 NOTICE: Config file "/root/.config/rclone/rclone.conf" not found - using defaults
Nun sind die Dateien (auch das fehlende Dokument) wieder in den paperless Ordnern. Das habe ich mit
auch nachgeprüft.
Code:
myusername@ubuntu-tn:~$ sudo docker exec -i paperless-db-1 psql -U paperless < /home/myusername/scriptest/pg_dumpall.dump
Nun wird die Datenbank wiederhergestellt.
Ich fertige erneut ein Backup an und kann verifizieren, dass das neue Backup nun wieder Z1 und nicht Z2 zeigt. Dennoch habe ich in paperless nachwie vor Z2 vor mir.
Wahrscheinlich müssen wir hier einfach warten, bis ich neue VMs zum Testen aufgesetzt habe. Falls natürlich jemand jetzt noch einen Tipp hat, was dann dabei speziell zu uberprüfen / loggen wäre, um anschließend die Fehlersuche zu vereinfachen, ist das natürlich klasse.