Closed Robbe64 closed 11 months ago
Bei PostgreSQL ist es leider so, dass nicht automatisch auf ein neues Major-Release aktualisiert werden kann. Es ist dann grundsätzlich ein Backup/Restore notwendig. Ja, das ist aufwändig und überhaupt nicht komfortabel.
Wer also einmal mit PostgreSQL 15 angefangen hat, sollte dabei bleiben und nicht auf das kürzlich erschienene PostgreSQL 16 aktualisieren - es sein denn, man weiß wirklich, was man tut und kann mit pg_dump
und psql
umgehen. Bei PostgreSQL werden alte Version auch jahrelang gepflegt, man bekommt also weiterhin Minor-Updates.
Das docker-compose.yml
der Installationsanleitung habe ich kürzlich auf PostgreSQL 16 aktualisiert, das richtet sich aber nur an Neuinstallationen.
Beim Einsatz von Portainer und der Build-Methode "Repository" schlage ich vor, die Option GitOps updates zu deaktivieren, damit nicht ungewollt der Stack aktualisiert wird.
In jedem Fall muss bei dir nun manuell das PostgreSQL-Image auf Version 15 zurückgestellt werden, also auf diesen Eintrag:
image: postgres:15-alpine
Dann wird die Datenbank auch wieder starten, es gehen keine Daten verloren.
Ok, Danke!
Ich habe aus Portainer heraus direkt über Git auf /docker-compose.yml verwiesen. Dann wollte ich updaten und es wurde somit automatisch auf postgres 16 geändert. Nun startet jedoch die DB nicht mehr: "The data directory was initialized by PostgreSQL version 15, which is not compatible with this version 16.0" Es müsste also offenbar manuell aktualisiert werden. Das ist jetzt nicht so komfortabel ;)