Python: Tworzenie Makefile do wdrożenia na Stackhero
Ta dokumentacja jest częścią przewodnika Wdrażanie do produkcji. Pełny przewodnik znajdziesz tutaj: Jak wdrożyć swój kod Python do produkcji w kilka minut.
👋 Witamy w dokumentacji Stackhero!
Stackhero oferuje gotowe do użycia rozwiązanie Python cloud, które zapewnia wiele korzyści, w tym:
- Wdrażaj swoją aplikację w kilka sekund za pomocą prostego
git push.- Używaj własnej nazwy domeny i korzystaj z automatycznej konfiguracji certyfikatów HTTPS dla zwiększonego bezpieczeństwa.
- Ciesz się spokojem dzięki automatycznym kopiom zapasowym, aktualizacjom jednym kliknięciem oraz prostemu, przejrzystemu i przewidywalnemu cennikowi.
- Uzyskaj optymalną wydajność i solidne zabezpieczenia dzięki prywatnej i dedykowanej VM.
Oszczędzaj czas i upraszczaj sobie życie: wypróbowanie rozwiązania Python cloud hosting Stackhero zajmuje tylko 5 minut!
Aby poinformować Stackhero, jak uruchomić Twoją aplikację, użyjesz pliku Makefile w katalogu głównym projektu.
Jeśli nie miałeś jeszcze do czynienia z plikami
Makefilei poleceniemmake, nie martw się. Po prostu postępuj zgodnie z poniższymi instrukcjami.
Utwórz plik Makefile w katalogu głównym projektu z następującą zawartością:
run:
gunicorn app:app -b 0.0.0.0:8080 --error-logfile -
Kilka ważnych kwestii dotyczących tego Makefile:
- Reguła
runjest wymagana, ponieważ Stackhero uruchamia ją automatycznie. Prosimy jej nie zmieniać. - Polecenie
gunicorn app:app -b 0.0.0.0:8080 --error-logfile -to tylko przykład. Dostosuj je do wymagań swojej aplikacji. - Upewnij się, że polecenie gunicorn zaczyna się od znaku tabulacji. Jeśli pojawi się błąd typu "*** missing separator", oznacza to brak tabulacji.
W tym przykładzie Gunicorn służy do uruchomienia Twojej aplikacji (upewnij się, że znajduje się w pliku requirements.txt). Argument -b 0.0.0.0:8080 oznacza nasłuchiwanie na wszystkich interfejsach na porcie 8080. Jeśli wybierzesz inny port, pamiętaj o aktualizacji konfiguracji usługi Python w panelu Stackhero. Fragment app:app odnosi się do obiektu app w pliku app.py.