Docker-Image mit Cloud Build erstellen und per Push übertragen
Erfahren Sie mehr zu den ersten Schritten mit Cloud Build, indem Sie ein Docker-Image erstellen und das Image per Push an Artifact Registry übertragen. Artifact Registry bietet einen zentralen Speicherort für die Verwaltung von privaten Paketen und Docker-Container-Images.
Sie erstellen das Image mit einem Dockerfile
, der Konfigurationsdatei von Docker, und generieren dann dasselbe Image mit der Build-Konfigurationsdatei von Cloud Build.
Klicken Sie auf Anleitung, um eine detaillierte Anleitung für diese Aufgabe direkt im Cloud Shell-Editor zu erhalten:
Hinweise
- 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.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Cloud Build and Artifact Registry APIs.
- 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.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Cloud Build and Artifact Registry APIs.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
Quelldateien zum Erstellen vorbereiten
Zum Verpacken in ein Container-Image benötigen Sie Beispiel-Quellcode. In diesem Abschnitt erstellen Sie ein einfaches Shell-Skript und ein Dockerfile
. Ein Dockerfile
ist ein Textdokument, das Anweisungen für das Erstellen eines Images durch Docker enthält.
Öffnen Sie ein Terminalfenster.
Erstellen Sie ein neues Verzeichnis mit dem Namen
quickstart-docker
und rufen Sie dieses Verzeichnis auf:mkdir quickstart-docker cd quickstart-docker
Erstellen Sie eine Datei mit dem Namen
quickstart.sh
und mit folgendem Inhalt:Erstellen Sie eine Datei mit dem Namen
Dockerfile
und mit folgendem Inhalt:Führen Sie im Terminalfenster den folgenden Befehl aus, um
quickstart.sh
ausführbar zu machen:chmod +x quickstart.sh
Docker-Repository in Artifact Registry erstellen
Erstellen Sie ein neues Docker-Repository mit dem Namen
quickstart-docker-repo
am Standortus-west2
mit der Beschreibung „Docker repository“:gcloud artifacts repositories create quickstart-docker-repo --repository-format=docker \ --location=us-west2 --description="Docker repository"
Prüfen Sie, ob das Repository erstellt wurde:
gcloud artifacts repositories list
In der Liste der angezeigten Repositories wird
quickstart-docker-repo
aufgeführt.
Image mit Dockerfile erstellen
Mit Cloud Build können Sie ein Docker-Image mithilfe eines Dockerfile
erstellen. Sie benötigen keine separate Cloud Build-Konfigurationsdatei.
Zum Erstellen mit einem Dockerfile
gehen Sie so vor:
Rufen Sie Ihre Google Cloud-Projekt-ID ab, indem Sie den folgenden Befehl ausführen:
gcloud config get-value project
Führen Sie den folgenden Befehl in dem Verzeichnis aus, das
quickstart.sh
undDockerfile
:gcloud builds submit --region=us-west2 --tag us-west2-docker.pkg.dev/project-id/quickstart-docker-repo/quickstart-image:tag1
Nach Abschluss des Builds sollten Sie in etwa folgende Ausgabe sehen:
DONE
------------------------------------------------------------------------------------------------------------------------------------
ID CREATE_TIME DURATION SOURCE IMAGES STATUS
545cb89c-f7a4-4652-8f63-579ac974be2e 2020-11-05T18:16:04+00:00 16S gs://gcb-docs-project_cloudbuild/source/1604600163.528729-b70741b0f2d0449d8635aa22893258fe.tgz us-west2-docker.pkg.dev/gcb-docs-project/quickstart-docker-repo/quickstart-image:tag1 SUCCESS
Sie haben gerade mithilfe von Dockerfile
ein Docker-Image mit dem Namen quickstart-image
erstellt und das Image per Push an Artifact Registry übertragen.
Image mit einer Build-Konfigurationsdatei erstellen
In diesem Abschnitt verwenden Sie eine Cloud Build-Konfigurationsdatei, um dasselbe Docker-Image wie oben zu erstellen. Die Build-Konfigurationsdatei weist Cloud Build an, Aufgaben nach Ihren Spezifikationen auszuführen.
Erstellen Sie im selben Verzeichnis, das auch
quickstart.sh
undDockerfile
enthält, eine Datei mit dem Namencloudbuild.yaml
und dem folgenden Inhalt. Diese Datei ist Ihre Build-Konfigurationsdatei. Bei der Build-Erstellung ersetzt Cloud Build$PROJECT_ID
automatisch durch Ihre Projekt-ID.Starten Sie den Build mit dem folgenden Befehl:
gcloud builds submit --region=us-west2 --config cloudbuild.yaml
Nach Abschluss des Builds müssten Sie in etwa folgende Ausgabe sehen:
DONE
------------------------------------------------------------------------------------------------------------------------------------
ID CREATE_TIME DURATION SOURCE IMAGES STATUS
046ddd31-3670-4771-9336-8919e7098b11 2020-11-05T18:24:02+00:00 15S gs://gcb-docs-project_cloudbuild/source/1604600641.576884-8153be22c94d438aa86c78abf11403eb.tgz us-west2-docker.pkg.dev/gcb-docs-project/quickstart-docker-repo/quickstart-image:tag1 SUCCESS
Sie haben mithilfe der Build-Konfigurationsdatei gerade quickstart-image
erstellt und das Image per Push an Artifact Registry übertragen.
Build-Details ansehen
Öffnen Sie in der Google Cloud Console die Seite „Cloud Build“.
Wählen Sie Ihr Projekt aus und klicken Sie auf Öffnen.
Sie sehen die Seite Build-Verlauf:
Wählen Sie im Drop-down-Menü Region die Option
us-west2
aus, um die Builds in dieser Region aufzurufen.Klicken Sie auf einen bestimmten Build.
Es wird die Seite Build-Details angezeigt.
Klicken Sie unter Build-Zusammenfassung auf Build-Artefakte, um sich die Artefakte Ihres Builds anzeigen zu lassen.
Die Ausgabe sollte in etwa so aussehen:
Auf dieser Seite können Sie Ihr Build-Log herunterladen und die Image-Details in Artifact Registry aufrufen.
Bereinigen
Mit den folgenden Schritten vermeiden Sie, dass Ihrem Google Cloud-Konto die in dieser Anleitung verwendeten Ressourcen in Rechnung gestellt werden:
Öffnen Sie in der Google Cloud Console die Seite „Artifact Registry“.
Wählen Sie Ihr Projekt aus und klicken Sie auf Öffnen.
Wählen Sie quickstart-docker-repo aus.
Klicken Sie auf Löschen.
Sie haben nun die Images, die Sie im Rahmen dieses Schnellstarts erstellt haben, gelöscht.
Nächste Schritte
- Mehr zum Ausführen von Docker-Images
- Weitere Informationen zum Erstellen einfacher Build-Konfigurationsdateien.
- Weitere Informationen zum Bereitstellen mit Cloud Build
- Weitere Informationen zum Erstellen von Node.js-Anwendungen
- Weitere Informationen zum Erstellen von Java-Anwendungen
- Go-Anwendungen erstellen