Sprache Frankfurt, Deutschland
Nodion baut jedes Repository mit requirements.txt, Pipfile oder pyproject.toml mit seinem Python-Buildpack. Es installiert deine Dependencies, startet Django, FastAPI und Flask mit einem Produktionsserver und alles andere über app.py, main.py oder deine Procfile. Die App läuft in Frankfurt.
requirements.txt, Pipfile oder pyproject.tomlapp.py / main.py oder Procfilepoetry.lock (Poetry), Pipfile.lock (Pipenv), requirements.txt (pip), danach eine einzelne pyproject.toml, installiert mit pip install . (oder mit Poetry, wenn sie einen Abschnitt [tool.poetry] hat). Eine uv.lock wird ignoriert, und eine Pipfile ohne Lock-Datei installiert gar nichts. .python-version, dann runtime.txt, dann requires-python in der pyproject.toml; ohne diese Angaben bekommst du 3.13. Ein Bereich wie requires-python = ">=3.10" landet beim neuesten veröffentlichten Release, aktuell 3.15. Pinne also die Version, mit der du testest. .python-version 3.13 manage.py) startet mit Gunicorn, FastAPI oder Starlette mit Uvicorn, Flask mit Gunicorn. Den Server ergänzt Nodion nicht, er gehört in deine Dependencies. Ohne Framework startet Nodion python app.py oder python main.py, und dieses Skript muss auf 0.0.0.0 und dem PORT lauschen, den Nodion setzt. web:-Zeile ersetzt den Default. Ohne Django, FastAPI, Flask, app.py oder main.py muss die Procfile einen Prozess festlegen, web: oder worker:; sonst bricht der Build mit einer Fehlermeldung ab, die sagt, was fehlt. Eine release:-Zeile läuft bei jedem Build einmal, bevor die neue Version startet, der richtige Ort für Migrationen. Procfile web: gunicorn myapp.wsgi --bind 0.0.0.0:$PORT
release: alembic upgrade head DATABASE_URL gibt es nur zur Laufzeit. Danach baut jeder Push ein neues Release. worker:-Zeile startet allein noch nichts: Leg auf dem Tab Processes einen Prozess mit demselben Namen und ohne Port an. Behalte daneben eine ausdrückliche web:-Zeile, denn ohne sie wird der erste Procfile-Eintrag außer release: zum Standardbefehl. Eine reine Worker-App wie ein Bot setzt stattdessen web auf 0 Instanzen.requirements.txt, Pipfile, pyproject.toml, poetry.lock und Pipfile.lock. Lock-Dateien führen auch indirekte Dependencies auf; eine Bibliothek, die FastAPI mitbringt, etwa Gradio, kann also den FastAPI-Default auslösen. Eine web:-Zeile schafft Klarheit.requirements.txt, etwa mit uv export --no-emit-project -o requirements.txt, und committe sie; sonst installiert Nodion aus der pyproject.toml ohne Lock.DATABASE_URL, REDIS_URL oder CLICKHOUSE_URL in die App. release:-Zeile in der Procfile bei jedem neuen Build. Dockerfile-Apps sowie Redeploys und Rollbacks auf ein früheres Image nutzen einen Release Command, der an der App selbst gesetzt ist; er hat auch Vorrang vor der Procfile-Zeile. Bei statischen Sites läuft ein Release-Schritt in einem Image, das nur die gebauten Dateien enthält. 3.10 bis 3.15, Standard ist 3.13. Pinne eine Version in .python-version, dann bekommst du den neuesten Patch dieser Version. Versionen nach ihrem End-of-Life lassen den Build mit einer klaren Meldung scheitern.
Dann sagt deine Procfile, was läuft, sofern weder Django noch FastAPI noch Flask erkannt wird: eine web:-Zeile für einen Server oder eine worker:-Zeile für einen Hintergrundprozess. Fehlt sie, scheitert der Build mit einer Fehlermeldung, die sagt, was du ergänzen musst.
Ja. Trag es als worker: python job.py in eine Procfile ein, leg auf dem Tab Processes einen Prozess worker ohne Port an und setz web auf 0 Instanzen. Für Skripte, die nach Zeitplan laufen, nimmst du stattdessen den Tab Cron.
In der Region EU Central in Frankfurt. Build, Registry, die App und ihre Datenbanken, Volumes, Buckets, Logs und Metriken bleiben in dieser Region, API und Control Plane von Nodion werden in Deutschland gehostet. Die Nodion GmbH hat ihren Sitz in Stuttgart.
Nodion schafft die Voraussetzungen dafür: Die Nodion GmbH hat ihren Sitz in Stuttgart, in der Region Frankfurt laufen App, Datenbanken und Volumes in Deutschland, und den Auftragsverarbeitungsvertrag (AVV) nach Art. 28 DSGVO schließt du im Dashboard elektronisch ab. Ob dein Einsatz DSGVO-konform ist, hängt auch davon ab, wie du die App konfigurierst und nutzt.
Eine App-Instanz gibt es ab 1 EUR im Monat. Das Setup im Kostenkasten kostet 2 EUR im Monat: App 2 EUR. Preise sind netto, Abrechnung pro Sekunde, größere Varianten oder mehr Instanzen wählst du jederzeit.
Ja. Jede App bekommt einen Default-Hostnamen mit HTTPS. Deine eigene Domain nimmst du auf dem Tab Domains dazu, das TLS-Zertifikat wird automatisch ausgestellt und erneuert.
Ja. Nodion ist ein deutsches Unternehmen mit Sitz in Stuttgart, der Support antwortet auf Deutsch und auf Englisch.
Bis zu 15 € Guthaben beim Registrieren.
oder per E-Mail
Produktnews, kein Spam. Jederzeit abbestellen.
Erfolgreich eingetragen.