Updates installieren
StatO-Releases enthalten neue Funktionen, Fehlerbehebungen und Sicherheitsupdates. Der richtige Update-Weg hängt davon ab, wie die Instanz ursprünglich installiert wurde. Der neue Release-Installer darf nicht auf einen alten Source-Checkout mit bestehenden Legacy-Volumes angewendet werden.
Zuerst Installationsart feststellen
| Installationsart | Typische Dateien | Richtiger Update-Weg |
|---|---|---|
| Release-Installation | compose.yaml und config/stato.env in einem Installer-Verzeichnis | Release-Installer der gewünschten Version erneut ausführen. |
| Legacy-Source-Checkout | docker-compose.onprem.yml, .env.onprem und scripts/install-onprem.ps1 | Bestehenden Checkout aktualisieren und anschließend den bisherigen Legacy-Installer ausführen. |
| Importierter Docker-Stack | eigene deploy.yaml in Portainer, Mittwald oder Docker Compose | Image-Version in derselben deploy.yaml ändern und genau diesen Stack aktualisieren. |
:::caution Meldung „vorhandenes On-Prem-Datenvolume erkannt" Diese Meldung bedeutet: Der neue Release-Installer hat ein Legacy-Volume entdeckt und stoppt absichtlich. Das ist ein Schutz vor Datenverlust und kein Hinweis darauf, dass die Daten gelöscht oder neu installiert werden sollen. :::
Release-Installation aktualisieren
Bei einer bereits vom Release-Installer verwalteten Installation kann der Installer für die gewünschte Version erneut gestartet werden. Er sichert den verwalteten Stack vor dem Containerwechsel und behält config/stato.env bei.
Setze ausdrücklich den bestehenden Installationsordner. C:\StatO und /opt/stato sind Beispiele und müssen durch deinen tatsächlichen Pfad ersetzt werden. Ohne Zielangabe hängt der Standardordner vom aktuellen Arbeitsverzeichnis ab.
$env:STATO_INSTALL_DIR = 'C:\StatO'
irm https://github.com/Hubertoink/stato_okja/releases/latest/download/install-onprem.ps1 | iex
Linux/macOS:
curl -fsSL https://github.com/Hubertoink/stato_okja/releases/latest/download/install-onprem.sh | STATO_INSTALL_DIR=/opt/stato sh
Der Installer lädt den letzten stabilen Release. Ein Push nach dev wird darüber nicht installiert. Für lokale Testinstanzen und eigene Builds siehe Konfiguration ändern und Dev testen.
Legacy-Source-Checkout aktualisieren
Dieser Weg gilt für bestehende Installationen mit docker-compose.onprem.yml. Führe nicht den neuen Release-Installer aus.
- Erstelle ein Backup von Datenbank und Uploads.
- Prüfe, dass der bestehende Checkout und seine
.env.onpremvorhanden sind. - Aktualisiere den Checkout auf den gewünschten, getesteten StatO-Release.
- Starte im selben Verzeichnis den bisherigen Installer:
.\scripts\install-onprem.ps1
Der Legacy-Installer übernimmt Migrationen mit DB_MIGRATIONS_RUN=true und startet die vorhandenen Dienste neu. Verwende niemals docker compose down -v; der Zusatz -v entfernt Datenvolumes.
Importierten Docker-Stack aktualisieren
Bei einer durch den Environment Generator erstellten deploy.yaml bleibt der Stack der maßgebliche Ort für Updates:
- Erstelle ein Backup.
- Passe die StatO-Version in
deploy.yamlan oder erzeuge die Datei im Generator erneut. - Aktualisiere den vorhandenen Stack in derselben Plattform – etwa per Stack aktualisieren in Portainer oder mit Docker Compose:
docker compose -f deploy.yaml pull
docker compose -f deploy.yaml up -d
Nach jedem Update
- Prüfe Containerstatus und Backend-Logs.
- Melde dich mit einem normalen Benutzerkonto an.
- Lege eine Testaktivität an oder prüfe eine bestehende Aktivität.
- Öffne Statistik und einen Export.
- Dokumentiere Version, Zeitpunkt und Ergebnis des Updates.
Wenn ein Update fehlschlägt
Stoppe nicht vorschnell Datenbank- oder Volume-Dienste. Sichere Logs und prüfe die Fehlermeldung. Ein Rückweg ist nur zuverlässig, wenn zuvor ein getestetes Backup vorhanden ist.