Flynn ist eine Open-Source-Platform-as-a-Service (PaaS), um Anwendungen und Datenbanken in Containern auszuführen, zu skalieren und zu verwalten.
Typischer Workflow
- Einen Flynn-Cluster starten (auf AWS, DigitalOcean oder Vagrant)
- Cluster-Zugangsdaten mit
flynn cluster addhinzufügen - Anwendung mit
flynn create <app_name>anlegen - Per Git deployen:
git push flynn master
Cluster-Verwaltung
Installation & Cluster-Einrichtung
flynn install # Provisioniert Flynn auf AWS EC2 oder DigitalOcean
flynn key add # Fügt Ihren öffentlichen SSH-Schlüssel dem Cluster hinzu
Cluster-Zugangsdaten (~/.flynnrc)
flynn cluster # Konfigurierte Cluster auflisten
flynn cluster add [-g githost] [-p pin] NAME URL KEY # Lokale CLI mit Cluster verbinden
flynn cluster remove NAME # Cluster-Konfiguration entfernen
flynn cluster default NAME # Aktiven Standard-Cluster festlegen
Anwendungs-Lebenszyklus
Neue App einrichten
cd ~/my-project
flynn create example # Fügt ein Git-Remote namens 'flynn' hinzu
flynn route # Standard-HTTP-Routen prüfen
git push flynn master # Code bauen und deployen
CLI-Befehle
Umgebungsvariablen
flynn env # Alle Umgebungsvariablen auflisten
flynn env set KEY=value FOO=bar# Variablen setzen und Deployment auslösen
flynn env unset KEY # Konfigurationsvariable entfernen
flynn env get KEY # Bestimmten Konfigurationswert ausgeben
Prozess-Skalierung
flynn scale web=3 worker=2 # Web-Dynos auf 3 und Worker auf 2 skalieren
flynn scale # Aktuelle laufende Prozessanzahl anzeigen
flynn ps # Alle einzelnen Container-Instanzen auflisten
Logs & Monitoring
flynn log # Live kombinierte Cluster-Logs verfolgen
flynn log -f # Live-Stream folgen
flynn log --process=web # Logs nach Prozesstyp filtern
Befehle & Einmalige Aufgaben ausführen
flynn run bash # Interaktive Bash-Shell im Container öffnen
flynn run rake db:migrate # Einmalige Datenbankmigration ausführen
Domain- & Routen-Verwaltung
flynn route # Alle HTTP- / TCP-Routen auflisten
flynn route add http app.domain.com # Eigene Domain mit App verknüpfen