Cloud Shell-Container-Images anpassen

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:

Anleitung


Erstellen Sie Ihr eigenes benutzerdefiniertes Docker-Image:

  1. 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.

  2. Öffnen Sie das neue Dockerfile. Folgen Sie dazu der Anleitung in der Befehlszeile:

    cd $HOME/NEW_REPO_NAME && cloudshell edit Dockerfile
    
  3. 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.

  4. Erstellen Sie das Image lokal, indem Sie Folgendes ausführen:

    cloudshell env build-local
    
  5. 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
    
  6. Wenden Sie Ihre Codeänderungen lokal an:

    git commit -a -m "Initial custom environment check-in."
    
  7. Übertragen Sie die Codeänderungen per Push an Cloud Source Repositories:

    git push origin master
    
  8. Übertragen Sie Ihr benutzerdefiniertes Image schließlich per Push an Container Registry:

    cloudshell env push
    

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.