Seite 1 von 1
Flask Webanwendung Deployment
Verfasst: Montag 23. März 2020, 21:29
von Aramis
Hallo zusammen,
ich möchte gern meine in Flask entwickelte Webanwendung online schalten. Die Seite ist auf allinkl.de gehostet. Leider kann mir der Support hier nicht weiterhelfen. Hat jemand bereits Erfahrungen? Ich würde so vorgehen:
- über SSH eine virtuelle Umgebung anlegen
- die notwendigen Pakete über pip install laden
Was wäre nun der nächste Schritt, dass ich die Flask App ans laufen bekomme?
Danke und bleibt gesund!
Aramis
Re: Flask Webanwendung Deployment
Verfasst: Donnerstag 9. April 2020, 10:30
von pyuser80
Wie man eine Flask Anwendung zum Deployment bringt ist in der Flaskdoku beschrieben.
Re: Flask Webanwendung Deployment
Verfasst: Freitag 10. April 2020, 19:27
von noisefloor
Hallo,
der gängige Weg wäre, die Flask App über eine WSGI-Server wie gunicorn auf localhost ausliefern und nginx oder Apache als Reverse Proxy davor. Ob das deine Webspace / Server hergibt -> keine Ahnung, muss du halt prüfen.
Gruß, noisefloor
Re: Flask Webanwendung Deployment
Verfasst: Sonntag 26. April 2020, 11:42
von Aramis
Mittlerweile hab ich es gelöst und für alle die ebenfalls eine Flask Anwendung bei diesem Provider deployen wollen nachfolgend mein Vorgehen:
im Verzeichnis: /www/htdocs/w012345/XXX muss folgendes hinterlegt sein:
Folgende Ergänzungen in der .htaccess vornehmen:
Code: Alles auswählen
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /path/to/XXX/app.cgi/$1 [L]
AddHandler cgi-script .cgi
Options +ExecCGI
app.cgi
Code: Alles auswählen
#!/bin/bash
source /path/to/XXX/venv/bin/activate
/path/to/my/XXX/venv/bin/python3 /path/to/XXX/run.py
run.py
Code: Alles auswählen
#!/usr/bin/env python
from wsgiref.handlers import CGIHandler
from flaskapp import create_app
app = create_app()
CGIHandler().run(app)
Ich hoffe es hilft.
Viele Grüße, Aramis
Re: Flask Webanwendung Deployment
Verfasst: Donnerstag 30. Oktober 2025, 12:04
von christophs83
Hi Aramis, vielen Dank für Deine Anleitung!
Habe gerade ein Problem und denke, es ist vielleicht ähnlich gelagert wie deins, weiß aber gerade nicht, wie ich deine Lösung dahin transferiert bekomme. ich liefere eine flaskapp über gunicorn aus und kann sie über curl lokal auf 127.0.0.1:8000 auch abrufen. über Domain> Bearbeiten im KAS(technische Verwaltung) kann ich so wie es aussieht nur ein Stammverzeichnis angeben, über Gunicorn hab ich aber gar nicht so ein Verzeichnis. Ich dachte daran nginx oder apache als reverse proxy vorzuschalten, für die Installation und Einrichtung dieser scheinen aber Berechtigungen zu fehlen.
Entgegen Deiner Beschreibung hat es bei mir zudem im im Verzeichnis: /www/htdocs/w012345/XXX die Dateien nicht hinterlegt...
VirtualEnv
.htaccess
cgi-Skript
run.py
Wäre super nett wenn mir jemand weiterhelfen könnte... Danke und Grüße,
Christoph
Re: Flask Webanwendung Deployment
Verfasst: Freitag 31. Oktober 2025, 09:34
von noisefloor
Hallo,
CGI unter Python ist eigentlich tot und das CGI Modul ist aus Python 3.13 und neuer entfernt worden. Den wsgiref CGI handler gibt es noch, d.h. das könnte noch funktionieren.
Aber du müsstest mal ein bisschen mehr Kontext liefern... Kannst du auf dem System Python und alle notwendigen Module installieren? Kannst du mit Nutzerrechten einen WSGI Applikationsserver wie Gunicorn mit Nutzerrechten starten und ggf. auch auf der IP Adresse des entsprechenden Rechner lauschen lassen?
Gruß, noisefloor