Containerisierte Webanwendung erstellen und bereitstellen
Mit Sammlungen den Überblick behalten
Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.
Hier erfahren Sie, wie Sie eine containerisierte Webanwendung mit dem Cloud Shell-Editor erstellen, lokal testen und dann in einem GKE-Cluster (Google Kubernetes Engine) bereitstellen.
Klicken Sie auf Anleitung, um eine detaillierte Anleitung für diese Aufgabe direkt im Cloud Shell-Editor zu erhalten:
Verwenden Sie den Cloud Shell-Editor als Umgebung zum Erstellen Ihrer Anwendung. Im Editor sind die für die Cloud-Entwicklung erforderlichen Tools vorinstalliert.
Wenn Sie aufgefordert werden, Cloud Code zur Verwendung Ihrer Anmeldedaten für einen Google Cloud API-Aufruf zu autorisieren, klicken Sie auf Autorisieren.
Rufen Sie über die Statusleiste das Menü Cloud Code auf.
Wählen Sie Neue Anwendung aus.
Wählen Sie als Beispielanwendung Kubernetes-Anwendung aus.
Wählen Sie aus der Liste der Kubernetes-Beispielanwendungen Go:Hello World aus.
Wählen Sie einen Ordner für den Speicherort der Anwendung aus und klicken Sie auf Neue Anwendung erstellen.
Der Cloud Shell-Editor lädt Ihre Anwendung in einen neuen Arbeitsbereich. Sobald die Anwendung neu geladen wurde, kann sie über die Explorer-Ansicht aufgerufen werden.
Anwendung in einem lokalen Cluster testen
Nachdem Sie die Anwendung erstellt haben, können Sie sie in einem lokalen Kubernetes-Cluster in Cloud Shell ausführen:
Klicken Sie auf Terminal > New Terminal, um ein Cloud Shell-Terminal zu öffnen.
Führen Sie den folgenden Befehl über die Eingabeaufforderung Terminal aus, um Ihren lokalen Minikube-Cluster zu starten:
minikubestart
Es kann einen Moment dauern, bis der Minikube-Cluster eingerichtet ist.
Wenn Sie zur Autorisierung von Cloud Shell aufgefordert werden, um Cloud API-Anrufe auszuführen, klicken Sie auf Autorisieren.
Wenn der Cluster eingerichtet ist, wird eine Meldung wie diese angezeigt:
Done! kubectl is now configured touse "minikube" cluster...
Nach der Konfiguration des lokalen Clusters können Sie diese Anwendung erstellen und ausführen:
Rufen Sie über die Statusleiste das Menü Cloud Code auf.
Wählen Sie
Auf Kubernetes ausführen aus.
Wenn Sie dazu aufgefordert werden, bestätigen Sie, dass Sie den aktuellen minikube-Kontext verwenden möchten.
Dieser Vorgang dauert einige Minuten. Sie können den Deployment-Status in der Ansicht Development Sessions aufrufen.
Wenn Sie in der Ansicht „Development Sessions“ auf verschiedene Knoten klicken, werden die Logauszüge angezeigt, die zur ausgewählten Deployment-Phase gehören.
Nachdem die Anwendung erstellt und bereitgestellt wurde, suchen Sie den Portweiterleitungsknoten für Ihren Dienst: Maximieren Sie in der Ansicht „Entwicklungssitzungen“ Portweiterleitungs-URLs > Dienst > go-hello-world-external.
Bewegen Sie den Mauszeiger über go-hello-world-external, um die Anwendung zu starten, und klicken Sie auf open_in_newURL öffnen.
Anwendung bearbeiten
Weitere Informationen zu den Komponenten der Anwendung „Hello World“ finden Sie im Diagramm in der Datei readme.md der Anwendung. Auf übergeordneter Ebene besteht die Anwendung aus folgenden Komponenten:
Einer einfachen go-hello-world-Webanwendung (main.go), die die Vorlagenantwort „It's running!“ an alle eingehenden Anfragen zurückgibt.
Dem go-hello-world-external-Load-Balancer-Dienst (hello.service.yaml), der die Anwendung durch Beschreiben eines Kubernetes-Dienstes verfügbar macht.
So ändern Sie die Anwendung:
Ändern Sie die Datei main.go so, dass sie „It's redeployed!“ ausgibt. Die Datei wird automatisch gespeichert.
Es dauert eine Minute, bis die Anwendung erstellt und bereitgestellt wurde. Behalten Sie dann den Fortschritt der Anwendung während der Neuerstellung in der Ansicht Development Sessions im Blick.
Nachdem Ihre Anwendung erstellt und bereitgestellt wurde, suchen Sie den Portweiterleitungsknoten für Ihren Dienst: Development Sessions > Port Forward URLs > Dienst > go-hello-world-external.
Bewegen Sie den Mauszeiger über go-hello-world-external, um die Anwendung zu starten, und klicken Sie auf open_in_new URL öffnen.
Anwendungslogs ansehen
Um die Anwendung während ihrer Ausführung zu analysieren, verwenden Sie die Loganzeige, um ihre Logs zu überwachen:
Starten Sie die Loganzeige. Öffnen Sie dazu die Befehlspalette (aufrufbar über Ctrl/Cmd + Shift + P oder Ansicht > Befehlspalette) und führen Sie dann Cloud Code: Logs ansehen aus.
In dieser Ansicht können Sie die Logs für Ihre Anwendung filtern und aufrufen.
Geben Sie die Deployment-Filter an, um die Logs für Ihre Anwendung go-hello-world anzusehen.
Wechseln Sie zum Tab Ihrer Anwendung, auf dem „It's redeployed!“ angezeigt wird. Aktualisieren Sie die Seite im Browser und wechseln Sie dann wieder zum Tab „Cloud Shell“.
Zum Aufrufen der neu generierten Logs in der Loganzeige klicken Sie auf refreshAktualisieren.
Google Kubernetes Engine-Cluster erstellen
So erstellen Sie einen neuen GKE-Cluster (Google Kubernetes Engine) für das Deployment Ihrer Anwendung:
Klicken Sie auf Cloud Code und maximieren Sie dann den Bereich Kubernetes.
Klicken Sie auf addCluster zur KubeConfig hinzufügen und dann im Menü Schnellauswahl auf Google Kubernetes Engine.
Wenn Sie aufgefordert werden, container.googleapis.com zu aktivieren, klicken Sie auf Ja.
Klicken Sie auf + Neuen GKE-Cluster erstellen.
Wählen Sie Standard als Clustertyp aus.
Klicken Sie auf Öffnen, damit Cloud Shell dieGoogle Cloud -Konsole öffnen kann.
Verwenden Sie in der Google Cloud Console das von Ihnen erstellte Projekt, legen Sie für die Zone den Wert us-central1-a und für den Clusternamen den Wert my-first-cluster fest.
Klicken Sie auf Erstellen. Die Clustererstellung dauert einige Minuten.
Klicken Sie nach dem Erstellen des Clusters im Menü Schnellauswahl auf Aktualisieren.
Wenn der Name des neuen Clusters in der Liste angezeigt wird, klicken Sie auf den Clusternamen. Der neue Cluster wird der Konfiguration hinzugefügt und als aktiver Kontext konfiguriert.
Anwendung in einem GKE-Cluster bereitstellen
Um die Anwendung im neuen Cluster bereitzustellen:
Wählen Sie über die Statusleiste im Menü Cloud Code die Option Auf Kubernetes ausführen aus.
Bestätigen Sie den neu erstellten Cluster als Kontext für Ihre Anwendung.
Bestätigen Sie die Standardoption für Ihre Image-Registry.
Es dauert eine Minute, bis die Anwendung erstellt und bereitgestellt wurde. Behalten Sie dann den Fortschritt der Anwendung während der Neuerstellung in der Ansicht Development Sessions im Blick.
Nachdem die Anwendung erstellt und bereitgestellt wurde, suchen Sie den Portweiterleitungsknoten für Ihren Dienst: Maximieren Sie in der Ansicht „Entwicklungssitzungen“ Portweiterleitungs-URLs > Dienst > go-hello-world-external.
Bewegen Sie den Mauszeiger über go-hello-world-external, um die Anwendung zu starten, und klicken Sie auf open_in_newURL öffnen.
Bereinigen
So löschen Sie nur den Cluster, den Sie für diese Kurzanleitung erstellt haben:
Bewegen Sie den Mauszeiger auf den Clusternamen und klicken Sie dann auf In der Google Cloud -Konsole öffnen.
Klicken Sie auf Löschen und dann noch einmal auf Löschen.
So löschen Sie Ihr Projekt und die zugehörigen Ressourcen, einschließlich der Cluster:
Rufen Sie in der Google Cloud Console die Seite „Projekte“ auf:
[[["Leicht verständlich","easyToUnderstand","thumb-up"],["Mein Problem wurde gelöst","solvedMyProblem","thumb-up"],["Sonstiges","otherUp","thumb-up"]],[["Schwer verständlich","hardToUnderstand","thumb-down"],["Informationen oder Beispielcode falsch","incorrectInformationOrSampleCode","thumb-down"],["Benötigte Informationen/Beispiele nicht gefunden","missingTheInformationSamplesINeed","thumb-down"],["Problem mit der Übersetzung","translationIssue","thumb-down"],["Sonstiges","otherDown","thumb-down"]],["Zuletzt aktualisiert: 2025-09-04 (UTC)."],[],[],null,["# Create and deploy a containerized web app\n\nLearn how to create a containerized web app using the Cloud Shell Editor, test\nit locally, and then deploy it to a Google Kubernetes Engine (GKE) cluster.\n\n*** ** * ** ***\n\nTo follow step-by-step guidance for this task directly in the\nCloud Shell Editor, click **Guide me**:\n\n[Guide me](https://console.cloud.google.com/freetrial?redirectPath=/?walkthrough_id=shell__gke_cloud_code)\n\n*** ** * ** ***\n\nBefore you begin\n----------------\n\n1. In the Google Cloud console, go to the project selector page.\n\n [Go to project selector](https://console.cloud.google.com/projectselector2/home/dashboard)\n2. Select or create a Google Cloud project.\n\n | **Note**: If you don't plan to keep the resources that you create in this procedure, create a project instead of selecting an existing project. After you finish these steps, you can delete the project, removing all resources associated with the project.\n\nCreate your web app\n-------------------\n\nUse the Cloud Shell Editor as your environment for creating your app. The\neditor comes preloaded with the tools needed for Cloud development.\n\nTo create your app:\n\n\n1. Launch the [Cloud Shell Editor](https://ide.cloud.google.com).\n\n2. If prompted to authorize Cloud Code to use your credentials to\n make a Google Cloud API call, click **Authorize**.\n\n3. Launch the **Cloud Code** menu from the status bar.\n\n4. Select **New Application**.\n\n5. Select **Kubernetes application** as the type of sample app.\n\n6. From the list of sample Kubernetes apps, select **Go:Hello World**.\n\n7. Select a folder for your app location and then click **Create New\n Application**.\n\nCloud Shell Editor loads your app in a new workspace. After it reloads, your\napp is accessible with the\nexplorer view.\n\nTest your app in a local cluster\n--------------------------------\n\nNow that you've created your app, you can run it in a local Kubernetes cluster\nin Cloud Shell:\n\n1. To open a Cloud Shell terminal, click **Terminal** \\\u003e **New Terminal**.\n2. To start your local minikube cluster, from the\n terminal\n command prompt, run the following command:\n\n minikube start\n\n It might take a minute to set up the minikube cluster.\n3. If prompted to authorize Cloud Shell to make Cloud API calls,\n click **Authorize**.\n\n After your cluster is set up, a message similar to the following appears: \n\n Done! kubectl is now configured to\n use \"minikube\" cluster...\n\nAfter the local cluster is configured, build and run this app:\n\n1. Launch the **Cloud\n Code** menu from the status bar.\n2. Select **Run on\n Kubernetes**.\n3. If prompted, confirm that you want to use the current minikube context.\n\n This process takes a few minutes and you can view the deployment status in\n the\n **Development\n sessions** view.\n\n Clicking different nodes in the Development sessions view displays log\n excerpts pertaining to the selected deployment phase.\n4. After your app finishes building and deploying, find the port forward node\n for your service: In the Development sessions view, expand\n **Port Forward URLs** \\\u003e **service** \\\u003e\n **go-hello-world-external**.\n\n5. To launch your app, hold the pointer over\n **go-hello-world-external**\n and then click open_in_new **Open URL**.\n\nEdit your app\n-------------\n\nTo understand the Hello World app's components, see the diagram in the app's\n`readme.md`\nfile. At a high level, the app consists of:\n\n- A basic `go-hello-world` web app, `main.go`, that returns a templated \"It's running!\" response to all received requests.\n- A load balancer `go-hello-world-external` service, `hello.service.yaml`, that exposes the app by describing a [Kubernetes Service](https://kubernetes.io/docs/concepts/services-networking/service/).\n\nTo modify the app:\n\n1. Modify your `main.go` file to print \"It's redeployed!\". The file saves automatically.\n2. Give your app a minute to finish building and deploying, and monitor your\n app's progress as it's rebuilt using the\n **Development\n sessions** view.\n\n3. After your app finishes building and deploying, find the port forward node\n for your service: Development sessions \\\u003e Port Forward URLs \\\u003e service \\\u003e\n **go-hello-world-external**.\n\n4. To launch your app, hold the pointer over\n **go-hello-world-external**\n and click **open_in_new** Open URL.\n\nView app logs\n-------------\n\nTo analyze your app while it's running, use the Log Viewer to monitor its logs:\n\n1. Launch the Log Viewer by opening the command palette (accessible with\n `Ctrl`/`Cmd`+`Shift`+`P` or **View** \\\u003e **Command Palette** ) and then running\n **Cloud Code: View Logs**.\n\n This view allows you to filter and navigate the logs for your app.\n2. Specify the\n **Deployment**\n filters to view the logs for your app, `go-hello-world`.\n\n3. Switch to the tab with your app that shows \"It's redeployed!\" Reload the\n page in the browser and then switch back to the Cloud Shell tab.\n\n4. To view the newly generated logs in the Log Viewer, click\n refresh\n **Refresh**.\n\nCreate a Google Kubernetes Engine cluster\n-----------------------------------------\n\nTo create a new Google Kubernetes Engine cluster to deploy your app to:\n\n\n1. Click **Cloud\n Code** and then expand the **Kubernetes** section.\n\n2. Click add\n **Add a Cluster to the KubeConfig** and then click **Google Kubernetes\n Engine** in the **Quick pick** menu.\n\n3. When prompted to enable `container.googleapis.com`, click **Yes**.\n\n4. Click **+ Create a New GKE Cluster**.\n\n5. Choose **Standard** as the cluster type.\n\n6. Click **Open** to permit Cloud Shell to open the\n Google Cloud console.\n\n7. In Google Cloud console, use the project you created, set the zone to\n `us-central1-a`, and set the cluster name to `my-first-cluster`.\n\n8. Click **Create**. Cluster creation takes a few minutes.\n\n9. After the cluster is created, in the **Quick pick** menu, click\n\n **Refresh**.\n\n10. After the name of your new cluster appears in the list, click the cluster\n name. Your new cluster is added to the configuration and configured to be the\n active context.\n\nDeploy your app to a GKE cluster\n--------------------------------\n\nTo deploy your app to the new cluster:\n\n1. From the\n Cloud Code menu, accessible using the status bar,\n select\n **Run on\n Kubernetes**.\n\n2. Confirm your newly created cluster as the context for your app.\n\n3. Confirm the default option for your image registry.\n\n4. Give your app a minute to finish building and deploying, and monitor your\n app's progress as it's rebuilt using the\n **Development\n sessions** view.\n\n5. After your app finishes building and deploying, find the port forward node\n for your service: In the Development sessions view, expand\n **Port Forward URLs** \\\u003e **service** \\\u003e\n **go-hello-world-external**.\n\n6. To launch your app, hold the pointer over\n **go-hello-world-external**\n and click open_in_new **Open URL**.\n\nCleaning up\n-----------\n\nTo delete just the cluster you created for this quickstart:\n\n1. Hold the pointer over your cluster name and then click **Open in Google Cloud console**.\n2. Click **Delete** and then click **Delete**.\n\nTo delete your project (and associated resources, including any clusters):\n\n1. Go to the Projects page in the Google Cloud console:\n\n [Go to the Projects page](https://console.cloud.google.com/project)\n2. Select the project that you created for this quickstart and then click\n **Delete**.\n\n3. Type the project ID to confirm and then click **Shut down**.\n\n This shuts down the project and schedules it for deletion.\n\nWhat's next\n-----------\n\n- Discover the features of the\n [Cloud Shell Editor interface](/shell/docs/editor-overview).\n\n- Read about\n [debugging with the Cloud Shell Editor](/shell/docs/debugging)\n and Cloud Shell Editor's additional support for Kubernetes\n applications.\n\n- [Deploy your applications to ARM64, AMD64, or mixed-architecture GKE clusters](/code/docs/shell/deploy-to-arm-amd-mixed-arch)."]]