Zum Inhalt springen

Deployment Precheck

Vor jedem Deployment können Sie einen Deployment Precheck ausführen. Dabei werden alle Voraussetzungen geprüft, um Probleme zu erkennen, bevor Container entfernt oder neu erstellt werden. Der Precheck wird nicht automatisch ausgeführt, sondern manuell über den Run Precheck Button gestartet.

PrüfungBeschreibungSchweregrad
Variable ValidationSind alle Pflicht-Variablen gesetzt und valide?Error
Existing DeploymentGibt es bereits ein Deployment mit diesem Stack-Namen?Warning / Error
Image AvailabilitySind alle Docker-Images lokal oder remote verfügbar?Error
Port ConflictsWerden Host-Ports bereits von anderen Containern belegt?Error
Network AvailabilityExistieren externe Netzwerke, die vom Stack benötigt werden?Error
Volume StatusExistieren bereits Volumes für diesen Stack?Warning

Öffnen Sie den Stack Catalog und wählen Sie ein Produkt aus. Klicken Sie auf View Details, um die verfügbaren Stacks zu sehen.

Stack Catalog mit verfügbaren Produkten


Auf der Deploy-Seite konfigurieren Sie Stack Name und Environment Variables. In der rechten Sidebar finden Sie den Run Precheck Button.

Deploy-Seite mit Stack-Konfiguration


Klicken Sie auf den Run Precheck Button in der Sidebar. Sie werden auf eine eigene Precheck-Seite weitergeleitet, auf der die Infrastruktur-Prüfungen automatisch gestartet werden.

Sidebar mit Run Precheck Button


Die Precheck-Ergebnisseite zeigt die Ergebnisse aller Prüfungen:

  • Grün – Prüfung bestanden
  • Gelb – Warnung (Deployment möglich, aber Hinweis beachten)
  • Rot – Fehler (sollte vor dem Deployment behoben werden)

Precheck-Ergebnisseite mit Check-Ergebnissen


Schritt 5: Re-Check oder zurück zur Konfiguration

Abschnitt betitelt „Schritt 5: Re-Check oder zurück zur Konfiguration“

Über den Re-Check Button können Sie die Prüfungen erneut ausführen – z.B. nachdem Sie ein fehlendes Docker-Image gepullt haben. Über Back to Configure gelangen Sie zurück zur Deploy-Seite.

Precheck-Seite mit Re-Check Button


Zurück auf der Deploy-Seite können Sie das Deployment jederzeit starten. Der Deploy Button ist unabhängig vom Precheck-Ergebnis immer aktiv.

Deploy-Button aktiv ohne Precheck-Pflicht


Bei einem Produkt-Deployment (mehrere Stacks gleichzeitig) führt der Precheck die Prüfungen für alle Stacks parallel durch. Die Ergebnisse werden pro Stack gruppiert angezeigt:

  • Stacks mit Fehlern oder Warnungen werden automatisch aufgeklappt
  • Stacks ohne Probleme sind eingeklappt
  • Die Zusammenfassung zeigt den Gesamtstatus über alle Stacks

Prüft, ob alle als Required markierten Variablen einen Wert haben und ob die Werte den definierten Patterns entsprechen. Variablen wie ${FRONTEND_PORT} werden dabei korrekt aufgelöst.

Erkennt, ob bereits ein Deployment mit demselben Stack-Namen existiert:

Status des bestehenden DeploymentsErgebnis
RunningWarning – Upgrade-Szenario
Installing / UpgradingError – Deployment blockiert
FailedWarning – Retry-Szenario
RemovedOK – Frische Installation

Prüft für jeden Service, ob das Docker-Image lokal vorhanden ist oder remote gezogen werden kann. Image-Namen mit Variablen (z.B. ${REGISTRY}/app:${TAG}) werden vor der Prüfung aufgelöst.

Erkennt, ob Host-Ports bereits von laufenden Containern belegt werden. Port-Definitionen mit Variablen (z.B. ${WEB_PORT}:80) werden korrekt aufgelöst. Container, die zum selben Stack gehören (Upgrade-Szenario), werden ausgeschlossen.

Prüft, ob externe Netzwerke existieren, die vom Stack benötigt werden. Stack-eigene Netzwerke werden automatisch beim Deployment erstellt.

Meldet, ob benannte Volumes bereits existieren:

  • Neues Volume → OK (wird beim Deployment erstellt)
  • Existierendes Volume bei Upgrade → OK (Daten bleiben erhalten)
  • Existierendes Volume bei Neuinstallation → Warning (vorhandene Daten werden wiederverwendet)

Der Precheck kann auch über die Hooks API ausgeführt werden, ohne ein tatsächliches Deployment zu starten:

Terminal-Fenster
curl -X POST http://rsgo:8080/api/hooks/deploy \
-H "X-API-Key: rsgo_your_key" \
-H "Content-Type: application/json" \
-d '{
"stackName": "my-stack",
"stackId": "source:stack:version",
"dryRun": true
}'

Bei dryRun: true wird nur der Precheck ausgeführt und das Ergebnis zurückgegeben. Bei Fehlern antwortet die API mit 422 Unprocessable Entity.


  • Timeout: Der gesamte Precheck hat ein 30-Sekunden-Timeout
  • Einzelne Regel-Fehler: Wenn eine einzelne Prüfung fehlschlägt, wird dies als Warning gemeldet – andere Prüfungen laufen weiter
  • Docker-Verbindungsfehler: Wird sofort als Error gemeldet
  • Precheck-Fehler: Wenn der Precheck selbst fehlschlägt (z.B. Netzwerkprobleme), kann trotzdem deployed werden