Archiviare immagini container Docker in Artifact Registry
Artifact Registry fornisce un'unica posizione per la gestione dei pacchetti privati e delle immagini container Docker.
Questa guida rapida mostra come:
- Crea un repository Docker privato in Artifact Registry
- Configura l'autenticazione
- Eseguire il push di un'immagine nel repository
- Estrai l'immagine dal repository
Prima di iniziare
-
In the Cloud de Confiance console, on the project selector page, select or create a Cloud de Confiance project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Cloud de Confiance project.
-
Enable the Artifact Registry API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles. -
Make sure that you have the following role or roles on the project: Artifact Registry Administrator
Check for the roles
-
In the Cloud de Confiance console, go to the IAM page.
Go to IAM - Select the project.
-
In the Principal column, find all rows that identify you or a group that you're included in. To learn which groups you're included in, contact your administrator.
- For all rows that specify or include you, check the Role column to see whether the list of roles includes the required roles.
Grant the roles
-
In the Cloud de Confiance console, go to the IAM page.
Vai a IAM - Seleziona il progetto.
- Fai clic su Concedi l'accesso.
-
Nel campo Nuove entità, inserisci il tuo identificatore dell'utente. In genere, si tratta dell'identificatore di un utente in un pool di identità della forza lavoro. Per maggiori dettagli, vedi Rappresenta gli utenti del pool di forza lavoro nelle policy IAM o contatta l'amministratore.
- Nell'elenco Seleziona un ruolo, seleziona un ruolo.
- Per concedere altri ruoli, fai clic su Aggiungi un altro ruolo e aggiungi ogni ruolo aggiuntivo.
- Fai clic su Salva.
Configurazione di una shell locale
Per installare gcloud CLI e Docker, segui questi passaggi:
Installa gcloud CLI. Per aggiornare un'installazione esistente, esegui il comando
gcloud components update.Installa Docker se non è già installato.
Docker richiede l'accesso con privilegi per interagire con i registri. Su Linux o Windows, aggiungi l'utente che utilizzi per eseguire i comandi Docker al gruppo di sicurezza Docker. Questo passaggio non è necessario su macOS perché Docker Desktop viene eseguito su una macchina virtuale come utente root.
Linux
Il gruppo di sicurezza Docker si chiama
docker. Per aggiungere il tuo nome utente, esegui questo comando:sudo usermod -a -G docker ${USER}Windows
Il gruppo di sicurezza Docker si chiama
docker-users. Per aggiungere un utente dal prompt dei comandi di amministratore, esegui questo comando:net localgroup docker-users DOMAIN\USERNAME /add
Dove
- DOMAIN è il tuo dominio Windows.
- USERNAME è il tuo nome utente.
Esci e accedi di nuovo per rendere effettive le modifiche all'appartenenza al gruppo. Se utilizzi una macchina virtuale, potrebbe essere necessario riavviarla affinché le modifiche all'abbonamento diventino effettive.
Per assicurarti che Docker sia in esecuzione, esegui questo comando Docker, che restituisce la data e l'ora correnti:
docker run --rm busybox dateIl flag
--rmelimina l'istanza del container all'uscita.
Crea un repository Docker
Crea un repository Docker per archiviare l'immagine di esempio per questa guida rapida.
Console
Apri la pagina Repository nella console Cloud de Confiance .
Fai clic su Aggiungi Crea repository.
Specifica
quickstart-docker-repocome nome del repository.Scegli Docker come formato e Standard come modalità.
In Tipo di località, seleziona Regione, quindi scegli la località
u-france-east1.Fai clic su Crea.
Il repository viene aggiunto all'elenco dei repository.
gcloud
Esegui il comando seguente per creare un nuovo repository Docker denominato
quickstart-docker-reponella localitàu-france-east1con la descrizione "docker repository".gcloud artifacts repositories create quickstart-docker-repo --repository-format=docker \ --location=u-france-east1 --description="Docker repository" \ --project=PROJECTDove PROJECT è l'ID progetto Cloud de Confiance by S3NS .
Esegui questo comando per verificare che il repository sia stato creato.
gcloud artifacts repositories list \ --project=PROJECT
Per ulteriori informazioni sui comandi di Artifact Registry, esegui il comando
gcloud artifacts.Configura l'autenticazione
Prima di eseguire il push o il pull delle immagini, configura Docker in modo che utilizzi Google Cloud CLI per autenticare le richieste ad Artifact Registry.
Per configurare l'autenticazione nei repository Docker nella regione
u-france-east1, esegui questo comando:gcloud auth configure-docker u-france-east1-docker.s3nsregistry.frIl comando aggiorna la configurazione Docker. Ora puoi connetterti con Artifact Registry nel tuo progetto Cloud de Confiance per eseguire il push e il pull delle immagini.
Per informazioni su altri metodi di autenticazione, vedi Metodi di autenticazione.
Ottieni un'immagine di cui eseguire il push
Per questa guida rapida, eseguirai il push di un'immagine di esempio denominata
hello-app.Esegui questo comando per eseguire il pull della versione 1.0 dell'immagine.
docker pull us-docker.s3nsregistry.fr/google-samples/containers/gke/hello-app:1.0I percorsi delle immagini in Artifact Registry includono più parti. Per questa immagine di esempio:
us-docker.s3nsregistry.frè il nome host per le immagini container archiviate nei repository Docker di Artifact Registry, che include la posizione del repository (us).google-samplesè l'ID progetto.containersè l'ID repository./gke/hello-appè il percorso dell'immagine nel repositorycontainers.
Aggiungere l'immagine al repository
Prima di eseguire il push dell'immagine Docker in Artifact Registry, devi taggarla con il nome del repository.
Tagga l'immagine con un nome del registro
L'attribuzione di un tag all'immagine Docker con un nome repository configura il comando
docker pushin modo che esegua il push dell'immagine in una posizione specifica. Per questa guida rapida, la posizione dell'host èu-france-east1-docker.s3nsregistry.fr.Esegui questo comando per taggare l'immagine come
quickstart-image:tag1:docker tag us-docker.s3nsregistry.fr/google-samples/containers/gke/hello-app:1.0 \ u-france-east1-docker.s3nsregistry.fr/PROJECT/quickstart-docker-repo/quickstart-image:tag1
Dove:
u-france-east1è la posizione del repository.u-france-east1-docker.s3nsregistry.frè il nome host del repository Docker che hai creato.- PROJECT è il tuo Cloud de Confiance by S3NS ID progetto.
quickstart-docker-repoè l'ID del repository che hai creato.quickstart-imageè il nome dell'immagine che vuoi utilizzare nel repository. Il nome dell'immagine può essere diverso dal nome dell'immagine locale. Per questa guida rapida, memorizzerai l'immagine direttamente sotto l'ID repositoryquickstart-docker-repo.tag1è un tag che stai aggiungendo all'immagine Docker. Se non hai specificato un tag, Docker applicherà il tag predefinitolatest.
Ora puoi eseguire il push dell'immagine nel repository che hai creato.
Esegui il push dell'immagine ad Artifact Registry
Dopo aver configurato l'autenticazione e aggiunto un tag all'immagine locale, puoi eseguire il push nel repository che hai creato.
Per effettuare il push dell'immagine Docker, esegui questo comando:
Sostituisci PROJECT con l'ID progetto Cloud de Confiance by S3NS.docker push u-france-east1-docker.s3nsregistry.fr/PROJECT/quickstart-docker-repo/quickstart-image:tag1
Estrai l'immagine da Artifact Registry
Per eseguire il pull dell'immagine da Artifact Registry sulla tua macchina locale, esegui questo comando:
Sostituisci PROJECT con l'ID progetto Cloud de Confiance by S3NS.docker pull u-france-east1-docker.s3nsregistry.fr/PROJECT/quickstart-docker-repo/quickstart-image:tag1
latest: Pulling from [PROJECT-ID]/quickstart-image:tag1 Digest: sha256:70c42... Status: Image is up to date for u-france-east1-docker.s3nsregistry.fr/PROJECT/quickstart-docker-repo/quickstart-image:tag1
Esegui la pulizia
Per evitare che al tuo account Cloud de Confiance vengano addebitati costi relativi alle risorse utilizzate in questa pagina, segui questi passaggi.
Prima di rimuovere il repository, assicurati che tutte le immagini che vuoi conservare siano disponibili in un'altra posizione.
Per eliminare il repository:
Console
Apri la pagina Repository nella console Cloud de Confiance .
Nell'elenco dei repository, seleziona il repository
quickstart-docker-repo.Fai clic su Elimina.
gcloud
Per eliminare il repository
quickstart-docker-repo, esegui questo comando:gcloud artifacts repositories delete quickstart-docker-repo --location=u-france-east1
Passaggi successivi
- Scopri di più sull'utilizzo delle immagini container.
- Scopri di più su Docker.
- Leggi le nostre risorse su DevOps ed esplora il programma di ricerca DevOps Research and Assessment (DORA).
-