Flynn è una Platform-as-a-Service (PaaS) open-source progettata per eseguire, scalare e gestire applicazioni e database in container.
Flusso di lavoro tipico
- Avvia un cluster Flynn (su AWS, DigitalOcean o Vagrant)
- Aggiungi le credenziali del cluster con
flynn cluster add - Crea la tua applicazione con
flynn create <app_name> - Effettua il deploy via git:
git push flynn master
Gestione del Cluster
Installazione e configurazione cluster
flynn install # Esegue il provisioning di Flynn su AWS EC2 o cloud
flynn key add # Aggiunge la chiave pubblica SSH al cluster
Credenziali Cluster (~/.flynnrc)
flynn cluster # Elenca i cluster configurati
flynn cluster add [-g githost] [-p pin] NAME URL KEY # Collega la CLI locale al cluster
flynn cluster remove NAME # Rimuovi configurazione cluster
flynn cluster default NAME # Imposta cluster predefinito attivo
Ciclo di vita dell’applicazione
Configurazione Nuova App
cd ~/my-project
flynn create example # Aggiunge un remote git chiamato 'flynn'
flynn route # Ispeziona le rotte HTTP predefinite
git push flynn master # Compila ed esegui il deploy del codice
Comandi CLI
Variabili d’Ambiente
flynn env # Elenca tutte le variabili d’ambiente
flynn env set KEY=value FOO=bar# Imposta variabili e avvia il deploy
flynn env unset KEY # Rimuovi una variabile di configurazione
flynn env get KEY # Stampa un valore specifico
Scaling dei Processi
flynn scale web=3 worker=2 # Scala web a 3 e worker a 2
flynn scale # Mostra i conteggi attuali dei processi
flynn ps # Elenca tutte le singole istanze di container
Log e Monitoraggio
flynn log # Segui in diretta i log combinati del cluster
flynn log -f # Segui il flusso live
flynn log --process=web # Filtra i log per tipo di processo
Esecuzione di Comandi e Task Una Tantum
flynn run bash # Apri una shell bash interattiva nel container
flynn run rake db:migrate # Esegui una migrazione database una tantum
Gestione Domini e Rotte
flynn route # Elenca tutte le rotte HTTP / TCP
flynn route add http app.domain.com # Collega un dominio personalizzato all’app