Flask-Anwendung bereitstellen

FlaskFlaskBeginner
Jetzt üben

This tutorial is from open-source community. Access the source code

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

In diesem Lab lernen wir, wie wir eine Flask-Anwendung auf einen Server bereitstellen. Wir werden eine Distributionsdatei für unsere Anwendung erstellen und sie auf dem Server installieren. Das Lab setzt voraus, dass Sie über ein grundlegendes Verständnis von Flask, Python-Virtualen Umgebungen und der Befehlszeile verfügen.

Hinweis: Sie müssen die Code-Datei selbst erstellen und sie in der Umgebung ausführen. Sie können den Status des Flask-Diensts auf Web 5000 vorab anzeigen.

Die Anwendung erstellen

Zunächst müssen wir eine Wheel-Datei für unsere Anwendung erstellen. Dazu verwenden wir das build-Tool. Installieren Sie das build-Tool mit pip, wenn Sie es noch nicht getan haben:

## Installieren Sie das build-Tool
pip install build

Verwenden Sie nun das build-Tool, um die Wheel-Datei zu erstellen:

## Erstellen Sie die Wheel-Datei
python -m build --wheel

Die Wheel-Datei sollte sich im dist-Verzeichnis befinden und einen Namen wie flaskr-1.0.0-py3-none-any.whl haben.

Installieren Sie die Anwendung auf dem Server

Kopieren Sie die Wheel-Datei auf Ihren Server. Wenn Sie die Datei dort haben, erstellen Sie eine neue Python-Virtual-Umgebung und installieren Sie die Wheel-Datei mit pip:

## Installieren Sie die Wheel-Datei
pip install flaskr-1.0.0-py3-none-any.whl

Da dies eine neue Umgebung ist, müssen Sie die Datenbank erneut initialisieren:

## Initialisieren Sie die Datenbank
flask --app flaskr init-db

Geheimschlüssel konfigurieren

In einer Produktionsumgebung sollten Sie den Geheimschlüssel auf einen zufälligen Wert ändern. Um einen zufälligen Geheimschlüssel zu generieren, führen Sie den folgenden Befehl aus:

## Generieren Sie einen zufälligen Geheimschlüssel
python -c 'import secrets; print(secrets.token_hex())'

Erstellen Sie in einem config.py-Datei im Instanzordner und legen Sie SECRET_KEY auf den generierten Wert fest.

#.venv/var/flaskr-instance/config.py

SECRET_KEY = 'your_generated_secret_key'

Führen Sie die Anwendung mit einem Produktionsserver aus

Für eine Produktionsumgebung sollten Sie einen WSGI-Server statt des eingebauten Entwicklungsservers verwenden. Wir werden Waitress als unseren WSGI-Server verwenden.

Zunächst installieren Sie Waitress:

## Installieren Sie Waitress
pip install waitress

Nun sagen Sie Waitress, Ihre Anwendung zu servieren:

## Führen Sie die Anwendung mit Waitress aus
waitress-serve --call 'flaskr:create_app'

Zusammenfassung

In diesem Lab haben wir gelernt, wie man eine Flask-Anwendung auf einen Produktionsserver bereitstellt. Wir haben unsere Anwendung in eine Wheel-Datei gebaut, auf dem Server installiert, den Geheimschlüssel konfiguriert und die Anwendung mit einem produktionsfähigen WSGI-Server ausgeführt.