Framework Frankfurt nad Menem, Niemcy
Nodion rozpoznaje Flask w Twoich zależnościach, instaluje je swoim buildpackiem Pythona i uruchamia Gunicorn z trzema workerami dla Twojego obiektu aplikacji. Migracje mogą działać jako krok release, zanim każda nowa wersja trafi na produkcję, a aplikacja działa we Frankfurcie nad Menem, w razie potrzeby obok zarządzanej bazy danych PostgreSQL.
gunicorn app:app, 3 workery.python-version, bo zakres w pyproject.toml wybiera najnowsze wydanie. requirements.txt flask
gunicorn app.py, application.py i wsgi.py, który zawiera Flask, i uruchamia gunicorn <plik>:app z 3 workerami na porcie PORT ustawionym przez Nodion. Obiekt musi nazywać się app. app.py from flask import Flask
app = Flask(__name__)
@app.get("/")
def index():
return "Hello from Frankfurt" create_app() nie ma obiektu app na poziomie modułu, który dałoby się znaleźć, więc w pliku Procfile wskaż Gunicornowi funkcję tworzącą aplikację. Ta linia zastępuje domyślne polecenie startowe. Procfile web: gunicorn "myapp:create_app()" --bind 0.0.0.0:$PORT --workers 3 release: uruchamia flask db upgrade raz na każdy build, po buildzie i przed startem nowej wersji. Jeśli zakończy się błędem, wdrożenie zostanie zatrzymane, a działająca wersja nadal obsługuje ruch. Procfile release: flask --app myapp db upgrade DATABASE_URL. Ustaw swój SECRET_KEY jako zmienną oznaczoną jako sekret, odczytuj go przez os.environ, a potem zrób push. DATABASE_URL dostarczany przez Nodion zaczyna się od postgres://, czego SQLAlchemy 1.4 i nowsze nie akceptują. Zamień schemat, zanim przekażesz URL dalej: postgresql:// dla psycopg2, postgresql+psycopg:// dla psycopg 3./ odpowie kodem 2xx lub 3xx, więc przekierowanie na stronę logowania wystarczy. Jeśli / zwraca 401 lub 404, dodaj trasę taką jak /healthz i ustaw ją w ustawieniach aplikacji jako ścieżkę health checku.worker: celery -A myapp worker razem z jawną linią web: gunicorn app:app --bind 0.0.0.0:$PORT --workers 3; bez linii web: domyślnym poleceniem staje się pierwszy wpis w Procfile inny niż release:. Następnie w zakładce Processes dodaj proces o nazwie worker bez portu. Valkey w tym samym regionie daje Ci REDIS_URL.DATABASE_URL, REDIS_URL lub CLICKHOUSE_URL. release: w Procfile uruchamia się przy każdym nowym buildzie. Aplikacje z Dockerfile, a także ponowne wdrożenia i rollbacki do wcześniejszego obrazu, korzystają z polecenia release ustawionego w samej aplikacji, które ma też pierwszeństwo przed linią z Procfile. W przypadku stron statycznych krok release działa w obrazie zawierającym tylko zbudowane pliki. Zwykle w zależnościach brakuje Gunicorna, obiekt nie nazywa się app albo aplikacja korzysta z app factory. Dodaj gunicorn, zmień nazwę obiektu albo ustaw linię web:, która wywołuje create_app().
Nie. Gdy Flask jest w Twoich zależnościach, Nodion uruchamia Gunicorn. Wbudowany serwer Flaska jest przeznaczony do środowiska deweloperskiego, więc zostaw app.run() pod if __name__ == "__main__": do użytku lokalnego.
Domyślnie trzy. Własną liczbę ustawisz przez --workers w linii web:, a gdy jedna instancja nie wystarcza, uruchom więcej instancji procesu web.
W regionie EU Central we Frankfurcie nad Menem (Niemcy). Build, rejestr, aplikacja oraz jej bazy danych, wolumeny, buckety, logi i metryki pozostają w tym regionie, a API i warstwa sterowania (control plane) Nodion są hostowane w Niemczech. Nodion GmbH ma siedzibę w Stuttgarcie.
Nodion zapewnia do tego podstawy: Nodion GmbH ma siedzibę w Stuttgarcie (Niemcy), w regionie Frankfurt nad Menem aplikacja, jej bazy danych i wolumeny działają w Niemczech, a umowę powierzenia przetwarzania danych (DPA, art. 28 RODO) zawierasz elektronicznie w dashboardzie. To, czy Twoje wdrożenie spełnia wymogi RODO, zależy też od tego, jak skonfigurujesz aplikację i jak z niej korzystasz.
Instancja aplikacji kosztuje od 1 EUR miesięcznie. Konfiguracja z ramki kosztuje 3.50 EUR miesięcznie: Aplikacja 2 EUR, PostgreSQL 1.50 EUR. Ceny są podane netto, a rozliczenie następuje co do sekundy. Większe rozmiary lub więcej instancji możesz wybrać w dowolnym momencie.
Tak. Każda aplikacja dostaje domyślną nazwę hosta z HTTPS. Własną domenę dodasz w zakładce Domains aplikacji, a certyfikat TLS jest wystawiany i odnawiany automatycznie.
Zyskaj do 15 € środków na start przy rejestracji.
lub przez e-mail
Nowości produktowe, bez spamu. Możesz zrezygnować w każdej chwili.
Zapisano pomyślnie.