Hier erfahren Sie, wie Sie einen Webdienst, der eine statische HTML-Datei mithilfe von Flask bereitstellt, schreiben und lokal testen. Anschließend erstellen Sie die Konfigurationsdateien, die zum Bereitstellen des Webdienstes in App Engine erforderlich sind.
In diesem Schritt erstellen Sie eine Version eines Webdienstes, der Platzhalterdaten anzeigt. Anschließend testen Sie den Dienst lokal. Damit soll dafür gesorgt werden, dass Ihr einfacher Webdienst funktioniert, bevor Sie die Datastore- und Firebase-Authentifizierung hinzufügen.
Hinweis
Wenn Sie noch kein Google Cloud-Projekt erstellt haben, erstellen Sie ein Google Cloud-Projekt.
Richten, falls noch nicht geschehen, Ihre lokale Umgebung für die Python 3-Entwicklung ein. Führen Sie dazu folgende Schritte aus:
Laden Sie Python 3 herunter und installieren Sie es, um Ihren Webdienst zu entwickeln und Google Cloud CLI auszuführen.
Verwenden Sie Ihre Google Cloud-Nutzeranmeldedaten zur Authentifizierung mit Google Cloud CLI und aktivieren Sie lokale Tests mit Datastore:
gcloud auth application-default login
Webdienstdateien strukturieren
Das Projektverzeichnis, in dem Sie Ihren Webdienst erstellen, hat die folgende Dateistruktur:
building-an-app/
app.yaml
main.py
requirements.txt
static/
script.js
style.css
templates/
index.html
Die folgenden Abschnitte zeigen ein Beispiel für die Einrichtung der Dateien in Ihrem Projektverzeichnis.
Webdienst schreiben
Die erste Iteration Ihres Webdienstes verwendet Flask, um eine Jinja-basierte HTML-Vorlage bereitzustellen.
So richten Sie Ihren Webdienst ein:
Erstellen Sie die Datei
templates/index.html
:Fügen Sie Verhaltensweisen und Stile mit den Dateien
static/script.js
undstatic/style.css
hinzu:Verwenden Sie in der Datei
main.py
Flask, um die HTML-Vorlage mit den Platzhalterdaten zu rendern:Konfigurieren Sie alle Abhängigkeiten, die Sie für Ihren Webdienst benötigen, in der Datei
requirements.txt
:
Webdienst testen
Testen Sie jetzt Ihren Webdienst. Führen Sie ihn dazu lokal aus und verwenden Sie eine virtuelle Umgebung:
Mac OS/Linux
- Erstellen Sie eine isolierte Python-Umgebung:
python3 -m venv env
source env/bin/activate
- Wenn Sie sich nicht in dem Verzeichnis befinden, das den Beispielcode enthält, wechseln Sie zu dem Verzeichnis, das den Beispielcode
hello_world
enthält: Installieren Sie dann Abhängigkeiten:cd YOUR_SAMPLE_CODE_DIR
pip install -r requirements.txt
- Führen Sie die Anwendung aus:
python main.py
- Geben Sie im Webbrowser die folgende Adresse ein:
http://localhost:8080
Windows
Führen Sie Ihre Python-Pakete mit PowerShell aus.
- Wechseln Sie zu Ihrer Installation von PowerShell.
- Klicken Sie mit der rechten Maustaste auf die Verknüpfung zu PowerShell und starten Sie diese als Administrator.
- Erstellen Sie eine isolierte Python-Umgebung.
python -m venv env
.\env\Scripts\activate
- Gehen Sie zu Ihrem Projektverzeichnis und installieren Sie die Abhängigkeiten: Wenn Sie sich nicht in dem Verzeichnis befinden, das den Beispielcode enthält, wechseln Sie zum Verzeichnis mit dem Beispielcode
hello_world
. Installieren Sie dann Abhängigkeiten:cd YOUR_SAMPLE_CODE_DIR
pip install -r requirements.txt
- Führen Sie die Anwendung aus:
python main.py
- Geben Sie im Webbrowser die folgende Adresse ein:
http://localhost:8080
Webdienst für App Engine konfigurieren
Zum Bereitstellen Ihres Webdiensts in App Engine benötigen Sie eine app.yaml
-Datei.
In dieser Konfigurationsdatei werden die Einstellungen Ihres Webdienstes für App Engine festgelegt.
Zum Konfigurieren Ihres Webdiensts für die Bereitstellung in App Engine erstellen Sie die Datei app.yaml
im Stammverzeichnis Ihres Projekts, z. B. building-an-app
:
Für diesen einfachen Webdienst müssen Sie in der Datei app.yaml
nur die Laufzeiteinstellung und die Handler für statische Dateien festlegen.
Für komplexere Webdienste können Sie zusätzliche Einstellungen in app.yaml
konfigurieren, zum Beispiel Skalierung, zusätzliche Handler und andere Anwendungselemente wie Umgebungsvariablen und Dienstnamen.
Weitere Informationen und eine Liste aller unterstützten Elemente finden Sie in der Referenz zu app.yaml
.
Nächste Schritte
Nachdem Sie jetzt den Webdienst konfiguriert, erstellt und getestet haben, können Sie diese Version des Webdiensts in App Engine bereitstellen.