Zum Hauptinhalt springen

mittwald-zerodeploy Skill

Der mittwald-zerodeploy Skill liefert Zero-Config-Deployments auf mStudio Container Hosting mit Railpack Auto-Erkennung. Ein Dockerfile ist nicht notwendig.

Was der Skill macht

Der Skill automatisiert den Deployment-Prozess:

  • Auto-Erkennung: Framework und Anforderungen erkennen
  • Provisioning: Notwendige mStudio-Ressourcen anlegen
  • Local Deployment: Deployment von deinem lokalen Rechner per CLI
  • CI/CD Setup: GitHub Actions für automatische Deployments einrichten
  • Verification: Ausgerollte Anwendung testen

Unterstützte Frameworks

Railpack erkennt automatisch u. a.:

  • Node.js (Express, Next.js, NestJS, ...)
  • Python (Django, Flask, FastAPI, ...)
  • Ruby (Rails, Sinatra, ...)
  • PHP (Laravel, Symfony, ...)
  • Go-Anwendungen
  • Statische Websites
  • und weitere Laufzeiten

Workflow-Phasen

1. Provision

  • Projekt- und Serverauswahl
  • Container-Stack anlegen
  • Datenbanksetup (falls notwendig)
  • Domain-Konfiguration

2. Local CLI Deploy

  • Framework erkennen
  • Anwendung bauen und paketieren
  • Upload nach mStudio
  • Container starten

3. GitHub Actions Setup

  • Workflow-Datei erzeugen
  • mStudio-Credentials hinterlegen
  • Deployment-Trigger konfigurieren
  • CI/CD-Pipeline prüfen

4. Verify

  • Erreichbarkeit der Anwendung testen
  • Health-Checks validieren
  • Datenbankverbindung prüfen
  • Performance-Basiswert erfassen

So nutzt du den Skill

Trigger-Beispiele:

"Hilf mir, meine Express-App auf mittwald zu deployen"

Oder:

"Deploy to mittwald" "Set up mittwald deployment" "help me deploy"

Voraussetzungen

Zentrale Funktionen

Zero Configuration

Der Skill übernimmt automatisch:

  • Framework-/Versions-Erkennung
  • Build- und Start-Kommandos
  • Umgebungskonfiguration
  • Health-Check-Basics

Flexible Deployments

Deployment-Quellen:

  • Lokal: Direkt per CLI
  • GitHub: Automatisierte CI/CD-Pipeline
  • Andere CI-Systeme: Über Integrationen

Smart Defaults

Sinnvolle Defaults für:

  • CPU- und RAM-Ressourcen
  • Port-Konfiguration
  • Umgebungsvariablen
  • Health-Check-Endpoints

Optionale Konfiguration

runtime:
type: nodejs
version: "20"
resources:
memory: 512Mi
cpu: "0.5"
healthCheck:
path: /health
interval: 30s

Best Practices

  1. Vorher lokal testen
  2. Konfiguration über Umgebungsvariablen steuern
  3. Health-Checks aktiv konfigurieren
  4. CI/CD für reproduzierbare Deployments nutzen
  5. Nach erstem Deployment Logs beobachten

Troubleshooting

App startet nicht

  • Build-Logs auf Fehler prüfen
  • Umgebungsvariablen kontrollieren
  • Abhängigkeiten in package.json/requirements.txt sicherstellen
  • Port auf PORT-Variable hören lassen

Datenbankverbindung fehlgeschlagen

  • Credentials in Umgebungsvariablen prüfen
  • Datenbankprojekt/-status kontrollieren
  • Connection-String-Format validieren

GitHub Actions Deployment fehlgeschlagen

  • GitHub Secrets prüfen
  • Workflow-Syntax kontrollieren
  • CLI-Version aktualisieren
  • Logs im Actions-Run auswerten

Nächste Schritte