Postgresql Upgrade Version 16 nach Version 18 in der Masterclass

Hallo zusammen,

ich habe gestern meine Masterclass -Installation nach Version 3.1.3 angehoben.
Die Anleitung von RKuehne von hier hat super geholfen.
Ich hatte aber keine dump.rdb bei der Aktualisierung von redis nach valkey.

Nun würde ich gern als nächsten Schritt meine postgresql von Version 16
auf die aktuelle Version 18 aktualisieren.

Gibt hierfür eine Anleitung? Es hat sich ja das Verzeichnis geändert,
soweit ich gelesen habe.

Danke im Voraus.

Hier eine Anleitung von Stefan Sie bezieht sich zwar auf Version 17 aber der werdegang ist bei Version 18 identisch.
https://www.digitalisierung-mit-kopf.de/blogs/anleitungen/datenbank-von-paperless-ngx-so-gelingt-das-update-z-b-postgres-13-zu-postgres-15

das video dazu
https://www.youtube.com/watch?v=rHTVQ3PH8kA

NEU NEU !!! bei der Version 18 musst du das Volume anpassen.

volumes:
- pgdata:/var/lib/postgresql

Okay, das schaue ich mir mal an.
In der Masterclass ist die Datenbank ja im Filesystem sichtbar.
Dort sieht das Mapping in der docker-compose.yml so aus:

- ../pgdata:/var/lib/postgresql/data

das muss dann also geändert werden in:

- ../pgdata:/var/lib/postgresql

ja natürlich. hatte das jetzt nur direkt von paperless github seite genommen.

Ich hatte bei mir in der docker-compose.yml feste Speicherorte eingetragen. Bei mir liegen alle Verzeichnisse unter:
/volume1/docker/paperless-ngx/pgdata
/volume1/docker/paperless-ngx/media usw.

Und es reicht die Inhalte der folgenden Ordner zu löschen?

  1. data
  2. pgdata
  3. media

Weil in dem Link mit der Anleitung von Stefan steht unter Punkt 8:

“Sollten hier Fehlermeldungen auftreten, hast du vermutlich einen der folgenden Ordner nicht wie beschrieben gelöscht:”

ja die ordner löschen. es würde auch reichen den kompletten inhalt zu löschen.
dann die docker-compose.yml ändern
dann docker compose up starten
warten bis installation fertig ist. Melde dich NICHT bei paperless an
nocheinmal docker compose down und dann docker compose up -d
starte dann den importer.
WICHTIG ABER IST: Der Exporter MUSS fehlerfrei durchgelaufen sein.
Wenn du ganz sicher gehen willst kopiere dir den kompletten ordner paperless irgenwo hin. oder wenn du eine synology hast mach ein snapshot vom docker verzeichnis
Ändere für den Importer nicht die Paperless-Version. Aktuell hast du ja 3.1.3

das bedeutet, dass der importer dann die o.g. Ordner wieder erstellt?

JA. Paperless erstellt eine leere Datenbank (erstinstallation). Durch den Importer werden alle deine Dokumente aus der Exportdatei genommen und wieder in die Dateibank neu eingetragen. Alles was du an Korrespondenten,Speicherpfaden Tags und sonstige Einstellungen hast werden ebenfalls neu wieder hinzugefügt.

Das ist mir soweit klar, mir geht es um die drei Ordner (data, pgdata, media) im Dateisystem.

Ich vermute, dass diese Ordner leer vorhanden sein müssen, dass der Import wieder funktioniert.

ja sie müssen schon vorhanden sein wenn du die paperless installation machst

Upgrade ist super durchgelaufen.
Erstes neues Dokument in der aktualisierten Umgebung wurde auch hinzugefügt.

Danke.

habe heute auch noch ein paperless auf version geupdatet, so das alle meine paperless instanzen jetzt auf version 18 sind. wenn es keine Fragen weiter gibt dann schließen bitte diesen Post

@RKuehne Ich muss das Thema hier noch einmal aufgreifen, da ich mir gerade unschlüssig bin.

Ich habe ja von Redis auf Valkey umgestellt.
Liegt jetzt irgendwo noch ein Ordner der alten Redis Datenbank?

Der Broker ist ja so eingehangen, dass dich den normal nicht unter „Files“ sehe,
broker:
image: ``docker.io/valkey/valkey:9-alpine
restart: unless-stopped
volumes:
- redisdata:/data

Dank dir, falls du weißt, wo das auf der Syno gespeichert wird.

Das Thema Valkey gibt es ein kleines Problem was man aber leicht beheben kann. Wenn du jetzt einfach das Image austauschen würdest startet Paperless nicht mehr. Das liegt daran das redis und valkey nicht kompatibel sind und beide auf die dump.rdb zugreifen wollen im redisdata verzeichnis. Nun könnte man sagen ja gut dann lösche ich sie einfach. Das Problem nur ist das diese datei tief im system versteckt ist und auch nicht sichtbar. Deshalb passe einfach dein volumes an. durch ../ wird jetzt redisdata verzeichnis direkt im paperless verzeichnis angelegt. Damit wird valkey aktiv und paperless startet wieder.

- ../redisdata:/data

Bei mir läuft ja alles, ich würde nur schauen ob noch durch die Umstellung irgendwo Reste rumliegen,
die ich ggf. löschen kann/muss.

Und btw: Kann ich eine laufende Installation umstellen, wie muss ich das machen?

Mich würde interessieren wo das „tief im system versteckt“ ist,
also den genauen Pfad.

Du hast ein Docker Volume angelegt. Ist im Grunde auch nichts anderes wie einfach nur ein Verzeichnis.

/var/lib/docker/volumes/

Oder so ähnlich. Kannst gerne einmal schauen.

sudo find /volume1/@docker/volumes -name „dump.rdb“

bei mir gibt es noch viele leichen. Als ich mit paperless angefangen hatte war meine struktur noch nicht klar.
Immer wieder neue Test. Im docker konnte ich einfach die Verzeichnisse löschen. Aber redisdata leider nicht. Und da es mit redis kein problem gab funktionierte redis. habe da in der .env unterschiedliche COMPOSE_PROJECT_NAME genommen. diese finde ich dort wieder.

Bei mir sieht es in dem Ordner volumes so aus:

sudo ls -lisa /volume1/@docker/volumes/
total 24
7467918 0 drwx-----x 1 root root 94 Oct 25 06:13 .
7467864 0 drwx--x--- 1 root root 178 Oct 25 06:13 ..
65527685 0 brw------- 1 root root 0, 36 Oct 25 06:13 backingFsBlockDev
7467920 24 -rw------- 1 root root 32768 Oct 25 06:13 metadata.db
7468430 0 drwx-----x 1 root root 10 Feb 18 2024 paperless_redisdata

und dann unter paperless_redisdata

sudo ls -lisa /volume1/@docker/volumes/paperless_redisdata/_data/
total 4
7468431 0 drwxr-xr-x 1 999 synopkgs 16 Oct 25 12:05 .
7468430 0 drwx-----x 1 root root 10 Feb 18 2024 ..
65538367 4 -rw------- 1 999 1000 3403 Oct 25 12:05 dump.rdb

also scheinbar alles sauber. Dank dir.