Installation
QuoteNode aktualisieren
So prüfen Sie neue Versionen, aktualisieren eine Docker-Compose-Bereitstellung und führen einen sicheren Rollback durch.
QuoteNode aktualisieren
QuoteNode prüft automatisch auf neue Versionen. Sobald eine neuere Version verfügbar ist, zeigt das Admin-Panel eine Benachrichtigung mit der Versionsbezeichnung und einem Link zu den Release-Notes an.
Aktualisierung auf PostgreSQL 18
Die Compose-Dateien oben verwenden bereits postgres:18-alpine, daher brauchen Neuinstallationen nichts. Wenn du eine frühere Alpha auf PostgreSQL 16 oder 17 betrieben hast, migriere die Daten einmalig: Ein PostgreSQL-18-Server startet nicht auf einem älteren Datenverzeichnis (die Anwendung verweigert den Start, bis die Daten kompatibel sind, und ändert sie nie automatisch). Nutze das pg_dump-Backup aus der Checkliste unten, lege das Datenbank-Volume auf postgres:18-alpine neu an und stelle den Dump wieder her.
Funktionsweise der Versionsprüfung
Das Frontend ruft https://quotenode.dev/releases/latest.json beim Admin-Login ab. Dabei handelt es sich um eine schreibgeschützte, nicht authentifizierte GET-Anfrage. Es werden keine Daten Ihrer Instanz übermittelt. Die Prüfung kann deaktiviert werden:
VITE_RELEASE_CHECK_ENABLED=false
Sie können auch die Manifest-URL überschreiben:
VITE_RELEASE_MANIFEST_URL=https://your-mirror.example.com/releases/latest.json
Ist das Manifest nicht erreichbar, schlägt die Prüfung lautlos fehl und das Admin-Panel funktioniert normal weiter.
Checkliste vor dem Update
Vor dem Update:
- Notieren Sie die aktuelle Version, die unter Admin > Lizenz oder in der Versionsbenachrichtigung angezeigt wird.
- Sichern Sie
.env— diese Datei enthält Geheimnisse, die nicht neu generiert werden können (insbesondereDB_ENCRYPTION_KEY). - Erstellen Sie ein Datenbank-Backup:
docker compose exec postgres pg_dump -U quotenode quotenode > backup-before-upgrade.sql
- Falls automatische Backups aktiviert sind (
BACKUP_ENABLED=true), prüfen Sie, ob ein aktuelles Backup im Backup-Volume vorhanden ist.
Update-Vorgang
Für Docker-Compose-Bereitstellungen (Ubuntu VPS, LAN Linux, Coolify manuell):
docker compose pull
docker compose up -d
Dieser Befehl zieht die neuesten Images und erstellt nur die Container neu, deren Images sich geändert haben. Datenbankmigrationen werden beim Start des Backends automatisch ausgeführt.
Bei Coolify mit aktiviertem Auto-Deploy löst ein Push in den konfigurierten Branch das Update automatisch aus.
Überprüfung nach dem Update
Nachdem die Container laufen:
- Öffnen Sie
/health— der Endpunkt sollteUPzurückgeben. - Melden Sie sich an und prüfen Sie unter Admin > Lizenz die neue Versionsnummer.
- Erstellen Sie ein Test-Angebot und generieren Sie ein PDF, um die Pipeline zu überprüfen.
- Öffnen Sie einen öffentlichen Link, um das Frontend-Routing zu verifizieren.
- Falls SMTP konfiguriert ist, prüfen Sie, ob eine Test-Benachrichtigungs-E-Mail versendet wird.
Rollback
Falls das Update Probleme verursacht:
- Führen Sie nicht
docker compose down -vaus — dies löscht alle Daten einschließlich der Datenbank. - Stoppen Sie die Dienste:
docker compose down
- Bearbeiten Sie
docker-compose.yml(oder.env), um die vorherigen Image-Tags festzuschreiben:
services:
backend:
image: ghcr.io/lesisty7/quotenode/quotenode-api:v0.9.0-alpha
frontend:
image: ghcr.io/lesisty7/quotenode/quotenode-frontend:v0.9.0-alpha
- Starten Sie die Dienste erneut:
docker compose up -d
Falls die neue Version irreversible Datenbankmigrationen enthielt, reicht ein Rollback der Images allein möglicherweise nicht aus. In diesem Fall stellen Sie die Datenbank aus dem Backup vor dem Update wieder her:
docker compose down
docker compose up -d postgres
docker compose exec -T postgres psql -U quotenode quotenode < backup-before-upgrade.sql
docker compose up -d
Image-Tags festschreiben
Die Installationsanleitungen verwenden latest-Tags der Einfachheit halber. Für Produktionsbereitstellungen sollten Sie explizite Versions-Tags festschreiben, um zu steuern, wann Updates stattfinden:
services:
backend:
image: ghcr.io/lesisty7/quotenode/quotenode-api:v0.9.0-beta
frontend:
image: ghcr.io/lesisty7/quotenode/quotenode-frontend:v0.9.0-beta
Führen Sie dann ein Update durch, indem Sie den Tag ändern und docker compose up -d ausführen.
Versionsformat
QuoteNode verwendet semantische Versionierung mit einem Kanal-Suffix:
v0.9.0-alpha— frühe Entwicklungv0.9.0-beta— öffentliche Betav0.9.0-rc— Release-Kandidatv0.9.0— stabiles Release
Das Release-Manifest enthält version, channel, label und imageTags, sodass das Frontend Versionen präzise vergleichen kann.