Regions-ID
REGION_ID
ist ein abgekürzter Code, den Google anhand der Region zuweist, die Sie beim Erstellen Ihrer Anwendung ausgewählt haben. Der Code bezieht sich nicht auf ein Land oder eine Provinz, auch wenn einige Regions-IDs häufig verwendeten Länder- und Provinzcodes ähneln können. Bei Anwendungen, die nach Februar 2020 erstellt wurden, ist REGION_ID.r
in den App Engine-URLs enthalten. Bei Anwendungen, die vor diesem Datum erstellt wurden, ist die Regions-ID in der URL optional.
Diese Anleitung hilft Ihnen beim Einstieg in App Engine und beim Entwickeln, Bereitstellen und Verwalten einer Go-Anwendung.
Kosten
Für diesen Leitfaden fallen keine Kosten an. Wenn Sie nur diese Beispielanwendung ausführen, wird Ihr kostenloses Kontingent nicht überschritten.
Entwicklungsumgebung einrichten
Sie können entweder Ihren lokalen Rechner mit den Tools verwenden, mit denen Sie bereits vertraut sind, oder Cloud Shell nutzen. In Cloud Shell ist das Google Cloud CLI bereits installiert, Ihre Umgebung bereits eingerichtet und viele weitere Features auch.
Lokaler Rechner
Installieren Sie Go und richten Sie die gcloud CLI ein.
Cloud Shell
Starten Sie Cloud Shell. Alle Tools, die Sie brauchen, sind in Cloud Shell bereits vorinstalliert:
Google Cloud-Projekt erstellen
Ein Projekt ist für die Verwendung von Google Cloud erforderlich und bildet die Grundlage für die Nutzung aller Google Cloud-Dienste.
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Die Abrechnung für das Google Cloud-Projekt muss aktiviert sein.
-
Enable the Cloud Build API.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Die Abrechnung für das Google Cloud-Projekt muss aktiviert sein.
-
Enable the Cloud Build API.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
- Erstellen Sie Ihre App Engine-Anwendung und die zugehörigen Ressourcen. Sie müssen einen Ort auswählen, der später nicht mehr geändert werden kann.
gcloud app create
Einfachen Webdienst für App Engine schreiben
Im Folgenden erfahren Sie, wie Sie einen Webdienst programmieren und Laufzeiteinstellungen festlegen.
Dateien strukturieren
Ihr Dienst hat die folgende Dateistruktur:
go-app/
: Verzeichnis für Ihren Go 1.11-Dienst.app.yaml
: die Konfigurationseinstellungen Ihres Dienstesmain.go
: Ihr Anwendungscode
app.yaml
-Datei erstellen
Jedes App Engine-Projekt verfügt über eine app.yaml
-Konfigurationsdatei, die die Einstellungen der Laufzeitumgebung Ihres Dienstes enthält. Ohne diese Datei lässt sich der Dienst nicht bereitstellen.
Erstellen Sie einen neuen Ordner mit dem Namen
go-app
für Ihren Go 1.11-Dienst:mkdir go-app
Erstellen Sie in Ihrem
go-app/
-Ordner eine Datei mit dem Namenapp.yaml
und fügen Sie die folgenden Inhalte hinzu:Dies ist die einfachste Konfiguration für eine App Engine-Anwendung. Sie zeigt App Engine an, dass Sie die Go 1.11-Laufzeit verwenden. In der Datei
app.yaml
können auch Netzwerk- und Skalierungseinstellungen festgelegt werden. Weitere Informationen finden Sie in der Referenz zuapp.yaml
.
main.go
-Datei erstellen
In diesem Beispiel wird das Paket net/http
verwendet, um einen HTTP-Server zu erstellen, der „Hello, World!“ ausgibt.
So richten Sie die Datei main.go
ein:
Erstellen Sie im Ordner
go-app/
einemain.go
-Datei.Fügen Sie die Anweisung
package main
hinzu, um Ihren Code als ausführbares Programm zu verarbeiten:package main
Damit ein Dienst in der Go 1.11-Laufzeit erfolgreich bereitgestellt werden kann, muss am Anfang von mindestens einer Ihrer Go-Quelldateien eine
package main
-Anweisung im selben Verzeichnis wie die Dateiapp.yaml
Ihres Dienstes definiert sein.Importieren Sie die folgenden Pakete:
Definieren Sie den HTTP-Handler:
Der
http.ResponseWriter
stellt die HTTP-Serverantwort zusammen. Wenn Sie in dieses Objekt schreiben, werden Daten an den Browser gesendet. Derhttp.Request
ist eine Datenstruktur für die eingehende HTTP-Anfrage.HTTP-Handler registrieren:
Die
main
-Funktion ist der Einstiegspunkt des ausführbaren Programms, also startet sie die Anwendung. Als Erstes wird diehttp.HandleFunc
-Funktion aufgerufen, die dashttp
-Paket anweist, alle Anfragen an das Webstammverzeichnis ("/"
) mit derindexHandler
-Funktion zu verarbeiten.Wenn die Umgebungsvariable
PORT
nicht festgelegt ist, wird Port8080
als Standard verwendet. Wenn Ihre Anwendung in App Engine ausgeführt wird, wird die UmgebungsvariablePORT
für Sie festgelegt. Beim lokalen Testen Ihrer Anwendung können Sie denPORT
auf einen beliebigen bevorzugten Wert setzen.
Webdienst in App Engine bereitstellen
Stellen Sie in Ihrem
go-app
-Verzeichnis, in dem sich Ihreapp.yaml
-Datei befindet, Ihren Webdienst mithilfe des folgenden Befehls in App Engine bereit:gcloud app deploy
Führen Sie den folgenden Befehl aus, um Ihren Browser zu starten und unter
https://PROJECT_ID.REGION_ID.r.appspot.com
auf Ihren Webdienst zuzugreifen:gcloud app browse
Glückwunsch! Sie haben jetzt einen Dienst erstellt und in App Engine bereitgestellt.
Dienste und Versionen
Der erste Dienst, den Sie für Ihre Anwendung bereitstellen, ist der Standarddienst.
Sie können den Namen Ihres Dienstes in der Datei app.yaml
angeben. Wenn Sie den Namen jedoch weglassen, wird er als default
behandelt. Sie können neben dem Standarddienst noch mehrere andere Dienste bereitstellen.
Sie können Ihren Dienst jederzeit mit dem Befehl gcloud app deploy
aktualisieren. Bei jeder Bereitstellung wird eine neue Version erstellt und der Traffic wird automatisch an die neueste Version weitergeleitet.
So bestätigen Sie die Erstellung von Diensten und die Bereitstellung der Version:
Rufen Sie Ihre App Engine-Dienste in der Google Cloud Console auf:
Sie sollten einen Dienst mit dem Namen
default
sehen. Der Standarddienst ist unter der folgenden URL öffentlich zugänglich:https://PROJECT_ID.REGION_ID.r.appspot.com
Rufen Sie die Versionen auf:
Sie sollten eine Version mit Zeitstempel sehen, die Ihrer Bereitstellung entspricht.
Informationen zum Senden von Anfragen an bestimmte Dienste und Versionen finden Sie unter Anfragerouting.
Nächste Schritte
Sie haben Ihre Webanwendung nun auf App Engine eingerichtet und bereitgestellt.
Sie können der Anwendung nun noch weitere Features hinzufügen. Informationen dazu finden Sie auf folgenden Seiten:
- Schreiben von Anwendungslogs und Interpretieren von Systemlogs (siehe Anwendungslogs lesen und schreiben)
- Ausführliche Informationen zur Funktionsweise von App Engine (siehe Go-Laufzeitumgebung)
- Mehr zur Anfrageverarbeitung und zum Anfragerouting