Auf dieser Seite wird beschrieben, wie Sie ein benutzerdefiniertes Docker-Image als Cloud Shell-Umgebung für Tutorials und Lernaktivitäten erstellen und verwenden.
Erstellen Sie für eine benutzerdefinierte Cloud Shell-Umgebung ein Docker-Image, das als benutzerdefinierte Cloud Shell-Umgebung mit den angegebenen zusätzlichen Paketen und benutzerdefinierten Konfigurationen dient. Das Docker-Image muss auf dem Cloud Shell-Basis-Image basieren und in Container Registry gehostet werden.
Benutzerdefiniertes Docker-Image erstellen
Klicken Sie auf Anleitung, um eine detaillierte Anleitung für diese Aufgabe direkt im Cloud Shell-Editor zu erhalten:
Erstellen Sie Ihr eigenes benutzerdefiniertes Docker-Image:
Führen Sie in einem Cloud Shell-Terminal-Tab den folgenden Befehl aus, um ein benutzerdefiniertes Standard-Image in einem von Cloud Source Repositories gehosteten Repository zu erstellen:
cloudshell env create-custom-image NEW_REPO_NAME
Wenn Sie alternativ lieber manuell in Container Registry bereitstellen oder Ihren eigenen Automatisierungsablauf verwenden möchten, können Sie ein neues, leeres Dockerfile erstellen und mit Schritt 3 fortfahren.
Öffnen Sie das neue Dockerfile. Folgen Sie dazu der Anleitung in der Befehlszeile:
cd $HOME/NEW_REPO_NAME && cloudshell edit Dockerfile
Fügen Sie unter der ersten Zeile alle zusätzlichen Pakete hinzu, die Sie in Ihrer Cloud Shell-Umgebung zur Verfügung stellen möchten. Beispiel:
FROM gcr.io/cloudshell-images/cloudshell:latest RUN apt-get -y install lsof
Die erste Zeile in Ihrem Dockerfile,
FROM gcr.io/cloudshell-images/cloudshell:latest
, verweist auf das Cloud Shell-Basis-Image und sollte nicht entfernt werden.Erstellen Sie das Image lokal, indem Sie Folgendes ausführen:
cloudshell env build-local
Testen Sie Ihr Image lokal und prüfen Sie, ob Ihre installierten Pakete vorhanden sind. Führen Sie dazu folgenden Befehl aus:
cloudshell env run
Führen Sie Folgendes aus, um die Tests zu beenden:
exit
Wenden Sie Ihre Codeänderungen lokal an:
git commit -a -m "Initial custom environment check-in."
Übertragen Sie die Codeänderungen per Push an Cloud Source Repositories:
git push origin master
Übertragen Sie Ihr benutzerdefiniertes Image schließlich per Push an Container Registry:
cloudshell env push
Link „In Cloud Shell öffnen“ aktualisieren
Wenn Sie Ihr benutzerdefiniertes Image mit einem In Cloud Shell öffnen-Link verwenden möchten, müssen Sie es zuerst veröffentlichen. Wie Sie ein benutzerdefiniertes Image veröffentlichen, erfahren Sie in der Anleitung zur Zugriffssteuerung in Container Registry.
Nachdem Sie die richtigen Zugriffseinstellungen eingerichtet haben, können Sie den Link In Cloud Shell öffnen aktualisieren, um die Parameter cloudshell_git_repo
und cloudshell_image
anzugeben. Wenn Sie beispielsweise eine Schaltfläche In Cloud Shell öffnen hinzufügen möchten, bearbeiten Sie die URLs im folgenden Beispiel und fügen Sie Ihrer Markdown-Datei einen Link ähnlich dem folgenden hinzu:
[![Open in Cloud Shell](https://gstatic.com/cloudssh/images/open-btn.svg)](https://shell.cloud.google.com/cloudshell/editor?cloudshell_git_repo=REPO_URL&cloudshell_image=DOCKER_IMAGE_URL)
Ersetzen Sie die folgenden Werte:
- REPO_URL: URL zum Speicherort Ihres Repositorys
- DOCKER_IMAGE_URL: URL zum Docker-Image
Weitere Informationen zu diesen und anderen Parametern finden Sie unter In Cloud Shell öffnen.
Benutzerdefiniertes Container-Image auf dem neuesten Stand halten
Ihr benutzerdefinierter Container muss auf dem neuesten öffentlichen Cloud Shell-Image basieren, damit er in Cloud Shell funktioniert. Wir empfehlen, wöchentliche Neuaufbaue durchzuführen, um das benutzerdefinierte Image auf dem neuesten Stand zu halten.