[GCP] Bis Sie das lokale Docker-Image in die Container-Registrierung verschieben
Überblick
Arbeiten Sie daran, das in der lokalen Umgebung entwickelte und erstellte Container-Image vom lokalen in das Repository von "Container Registry" zu verschieben.
Referenz
https://cloud.google.com/container-registry/docs/pushing-and-pulling#push_the_tagged_image_to
Verfahren
1. gcloud-einstellungen
- Installieren Sie den Befehl gcloud in Ihrer lokalen Umgebung
- https://cloud.google.com/sdk/docs/quickstart-macos?hl=ja
- Grundeinstellung
2. Erstellen Sie ein Dienstkonto für Push / Pull des Bildes
Wenn Sie Ihr eigenes Benutzerkonto verwenden und die Projekte auf verschiedene Weise verknüpft sind, haben Sie Angst, bei der Auswahl der Projekt-ID einen Fehler zu machen. Erstellen Sie daher ein dediziertes Dienstkonto.
- Erstellen Sie ein Dienstkonto
--Arbeiten an der Konsole
- Berechtigungseinstellung
- Das Container-Image von "Container Registry" wird von Cloud Storage verwaltet, und die Berechtigung besteht lediglich darin, die Berechtigung "Storage Administrator" von Cloud Storage zu erteilen.
- https://cloud.google.com/container-registry/docs/access-control#grant
https://cloud.google.com/sdk/docs/authorizing?hl=ja#authorizing_with_a_service_account
- Erstellen Sie einen Schlüssel für das Dienstkonto und richten Sie die lokale Authentifizierung ein
gcloud auth activate-service-account
- https://cloud.google.com/sdk/docs/authorizing?hl=ja#authorizing_with_a_service_account
3. Docker-Authentifizierungseinstellungen
Einstellungen für die Verwendung von gcloud als Docker-Authentifizierungshilfe
- Führen Sie
gcloud auth configure-docker
lokal aus
4. Drücken Sie auf das Docker-Image
- Wenn Sie mehrere Konten haben, wechseln Sie die Konten unten
gcloud config set account [ACCOUNT]
- Kennzeichnen Sie das lokale Image mit dem Registrierungsnamen
- Namensregeln: [HOSTNAME] / [PROJECT-ID] / [IMAGE]
- [HOSTNAME]: Wählen Sie eine der folgenden Optionen. Dadurch wird festgelegt, wo das Bild gespeichert werden soll.
--gcr.io hostet das Bild in einem Rechenzentrum in den USA, aber sein Standort kann sich in Zukunft ändern.
--us.gcr.io ist ein Speicherbereich, der das Image in einem Rechenzentrum in den USA hostet, jedoch unabhängig von dem von gcr.io gehosteten Image ist.
--eu.gcr.io hostet das Bild in der Europäischen Union.
--asia.gcr.io hostet das Bild in einem Rechenzentrum in Asien.
- [PROJEKT-ID]: Projekt-ID des Ziel-Google Cloud-Projekts
- [IMAGE]: Name des Containerbildes
--Tagging-Befehl:
Docker-Tag [lokaler Bildname oder Bild-ID] [Registrierungsname]: [Tag (spätestens, wenn nicht angegeben)]
- Drücken Sie
--
docker push [registername]: [tag (spätestens wenn nicht angegeben)]
Wenn Sie ein neues verschieben, wird ein Repository in der Containerregistrierung erstellt.