Restore OpenWebUI with its matching image

This commit is contained in:
Mikei386
2026-08-21 14:28:44 +02:00
parent 0c21aed7af
commit 934a4d8ced
3 changed files with 85 additions and 1 deletions
+14
View File
@@ -50,6 +50,7 @@ sudo ./platform/migration/restore-reference-backup.sh \
Das Skript prüft zuerst die Archiv-Hashes und übernimmt ausschließlich:
- die persistente OpenWebUI-Datenbank samt Einstellungen und Uploads,
- das zur Datenbank passende, gesicherte OpenWebUI-Container-Image,
- den dazugehörigen WebUI- und Router-Schlüssel,
- die freigegebenen HA-, ARR- und Unraid-Secrets,
- `runraid`, dessen privaten Schlüssel, Zertifikat und Known-Hosts-Datei.
@@ -59,5 +60,18 @@ Experimentdienste oder `.before-*`-Altstände. Vor dem Ersetzen des frischen
OpenWebUI-Volumes wird unter `/data/open-webui-before-restore-*.tar.gz` eine
Rückfallsicherung erstellt. Secret-Werte werden nicht ausgegeben.
OpenWebUI-Datenbanken sind nicht beliebig vor- oder rückwärtskompatibel. Das
Restore-Skript lädt deshalb bewusst das im Backup inventarisierte Original-
Image, versieht es lokal mit dem Tag `mike-ai/openwebui:reference` und trägt
diesen Tag sowohl in `stack.env` als auch – falls vorhanden – in
`/root/mike-ai-install.env` ein. Dadurch bleibt auch ein späterer, idempotenter
Installerlauf versionsgleich. Ein Upgrade auf eine neuere OpenWebUI-Version
erfolgt erst danach kontrolliert und mit einer eigenen Datenbanksicherung.
Falls ein älteres Image-Archiv trotz seines Namens das OpenWebUI-Image nicht
enthält, verwendet das Skript ausschließlich den im Docker-Inventar gesicherten
unveränderlichen Registry-Digest. Es fällt niemals auf `latest` zurück.
Da lokale Docker-Image-IDs beim Wiederherstellen von einem Registry-Digest
abweichen können, verifiziert es zusätzlich die gesicherte OCI-Build-Revision.
Der alte Host bleibt bis zum bestandenen Abnahmetest unverändert und dient nur
als Referenz. Es werden keine Caches oder unbekannten Altverzeichnisse kopiert.