Kapitel 17. Einsatz
Diese Arbeit wurde mithilfe von KI übersetzt. Wir freuen uns über dein Feedback und deine Kommentare: translation-feedback@oreilly.com
Der Webentwicklungsserver, der mit Flask ausgeliefert wird, ist nicht robust, sicher oder effizient genug, um in einer Produktionsumgebung zu funktionieren. In diesem Kapitel werden die Optionen für den Produktionseinsatz von Flask-Anwendungen untersucht.
Arbeitsablauf bei der Bereitstellung
Unabhängig von der verwendeten Hosting-Methode gibt es eine Reihe von Aufgaben, die durchgeführt werden müssen, wenn die Anwendung auf einem Produktionsserver installiert wird. Dazu gehört die Erstellung oder Aktualisierung der Datenbanktabellen.
Diese Aufgaben jedes Mal manuell auszuführen, wenn die Anwendung installiert oder aktualisiert wird, ist fehleranfällig und zeitaufwändig. Stattdessen kann ein Befehl, der alle erforderlichen Aufgaben ausführt, zu flasky.py hinzugefügt werden.
Beispiel 17-1 zeigt eine deploy
Befehlsimplementierung, die für Flasky geeignet ist.
Beispiel 17-1. flasky.py: Einsatzbefehl
from
flask_migrate
import
upgrade
from
app.models
import
Role
,
User
@manager.command
def
deploy
():
"""Run deployment tasks."""
# migrate database to latest revision
upgrade
()
# create or update user roles
Role
.
insert_roles
()
# ensure all users are following themselves
User
.
add_self_follows
()
Die Funktionen, die dieser Befehl aufruft, wurden alle vorher erstellt; sie werden nur alle zusammen von einem einzigen Befehl aufgerufen, um die ...
Get Flask Web Development, 2. Auflage now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.