Flynn to otwartoźródłowa platforma Platform-as-a-Service (PaaS) stworzona do uruchamiania, skalowania i zarządzania aplikacjami oraz bazami danych w kontenerach.
Typowy przepływ pracy
- Uruchom klaster Flynn (na AWS, DigitalOcean lub Vagrant)
- Dodaj poświadczenia klastra poleceniem
flynn cluster add - Utwórz aplikację przez
flynn create <app_name> - Wdróż przez git:
git push flynn master
Zarządzanie klastrem
Instalacja i konfiguracja klastra
flynn install # Tworzy klaster Flynn na AWS EC2 lub w chmurze
flynn key add # Dodaje klucz publiczny SSH do klastra
Poświadczenia klastra (~/.flynnrc)
flynn cluster # Wyświetl skonfigurowane klastry
flynn cluster add [-g githost] [-p pin] NAME URL KEY # Połącz lokalne CLI z klastrem
flynn cluster remove NAME # Usuń konfigurację klastra
flynn cluster default NAME # Ustaw domyślny klaster
Cykl życia aplikacji
Konfiguracja nowej aplikacji
cd ~/my-project
flynn create example # Dodaje zdalne repozytorium git 'flynn'
flynn route # Sprawdź domyślne trasy HTTP
git push flynn master # Zbuduj i wdróż kod
Polecenia CLI
Zmienne środowiskowe
flynn env # Wyświetl wszystkie zmienne środowiskowe
flynn env set KEY=value FOO=bar# Ustaw zmienne i wyzwól wdrożenie
flynn env unset KEY # Usuń zmienną konfiguracyjną
flynn env get KEY # Pokaż wartość wskazanej zmiennej
Skalowanie procesów
flynn scale web=3 worker=2 # Przeskaluj web do 3 oraz worker do 2
flynn scale # Pokaż aktualną liczbę działających procesów
flynn ps # Wylistuj wszystkie pojedyncze kontenery
Logi i monitoring
flynn log # Śledź na żywo połączone logi klastra
flynn log -f # Obserwuj strumień na żywo
flynn log --process=web # Filtruj logi według typu procesu
Wykonywanie poleceń i zadań jednorazowych
flynn run bash # Otwórz interaktywną powłokę bash w kontenerze
flynn run rake db:migrate # Wykonaj jednorazową migrację bazy danych
Zarządzanie domenami i trasami
flynn route # Wylistuj wszystkie trasy HTTP / TCP
flynn route add http app.domain.com # Podepnij własną domenę do aplikacji