Questa pagina spiega come gestire i grafici Helm 3 salvati come container OCI immagini, tra cui push (caricamento), pull (download), schede, tagging ed eliminazione grafici.
Prima di iniziare
- Se il repository di destinazione non esiste, crea un nuovo repository. Scegli Docker come di repository.
- Verifica di disporre delle autorizzazioni necessarie per repository Git.
- (Facoltativo) Configura le impostazioni predefinite per Google Cloud CLI Cloud.
Installa Helm 3.8.0 o versioni successive. Nelle versioni precedenti di Helm, il supporto per i grafici in formato OCI è funzionalità sperimentale.
Esegui
helm version
per verificare la tua versione.Configura Helm per l'autenticazione con Artifact Registry.
Creare o ottenere un grafico
Questa documentazione si concentra sulla gestione delle immagini dei grafici e presuppone che tu dispongono di grafici esistenti o hanno familiarità con la loro creazione. Per scoprire di più su creare grafici o ottenere grafici disponibili pubblicamente in Artifact Hub, consulta seguenti informazioni nella documentazione di Helm.
- Utilizzare Helm descrive come ottenere grafici da Artifact Hub pubblico e personalizzare prima di installarlo.
- In Grafici vengono descritti grafici e la loro creazione.
- Guida alle best practice per i grafici descrive convenzioni e best practice.
Pacchettizzazione di un grafico
Prima di eseguire il push di un grafico in Artifact Registry, devi pacchettizzato come di archiviazione dei grafici.
Passa alla directory che contiene il grafico.
Crea il grafico.
helm package CHART-PATH
Sostituisci CHART-PATH con il percorso della directory che contiene il tuo file
Chart.yaml
.
Helm utilizza il nome e la versione del grafico per il nome file dell'archivio. Ad esempio, se
hai un grafico con il nome my-chart
e il numero di versione 0.1.0
,
il nome del pacchetto è my-chart-0.1.0.tgz
.
Ora puoi eseguire il push del grafico ad Artifact Registry.
Push di un grafico
Dopo aver pacchettizzato il grafico, puoi eseguirne il push Artifact Registry.
Per eseguire il push del grafico, esegui questo comando:
helm push my-chart-0.1.0.tgz oci://LOCATION-docker.pkg.dev/PROJECT/REPOSITORY
Sostituisci i seguenti valori:
- LOCATION è il una o più regioni località del repository.
- PROJECT è il tuo progetto Google Cloud ID. Se l'ID progetto contiene i due punti (":"), vedi Progetti con ambito dominio.
- REPOSITORY è il nome del repository.
Helm utilizza le informazioni di Chart.yaml
per il nome dell'immagine container OCI e
del tag. Considera il seguente comando di esempio:
helm push my-chart-0.1.0.tgz oci://us-west1-docker.pkg.dev/my-project/my-repo
Helm carica l'archivio dei grafici come immagine my-chart
con il tag 0.1.0
.
Per verificare che l'operazione di push sia riuscita, elenca le immagini nella repository Git.
gcloud artifacts docker images list LOCATION-docker.pkg.dev/PROJECT/REPOSITORY
Pull dei grafici
Per estrarre un grafico:
Esegui questo comando per eseguire il pull dell'archivio grafici:
helm pull oci://LOCATION-docker.pkg.dev/PROJECT/REPOSITORY/IMAGE \ --version VERSION
Se vuoi eseguire il pull dell'archivio grafici ed estrarne i contenuti, aggiungi il metodo
--untar
flag.helm pull oci://LOCATION-docker.pkg.dev/PROJECT/REPOSITORY/IMAGE \ --version VERSION \ --untar
Sostituisci i seguenti valori:
- LOCATION è il una o più regioni località del repository.
- PROJECT è il tuo progetto Google Cloud ID. Se l'ID progetto contiene i due punti (":"), vedi Progetti con ambito dominio.
- REPOSITORY è il nome del repository in cui si trova l'immagine archiviati.
- IMAGE è il nome dell'immagine nel repository.
- VERSION è la versione semantica del grafico. Questo flag è obbligatorio. Helm non supporta l'estrazione di un grafico utilizzando un tag.
Installazione di un grafico
Installa un grafico archiviato in Artifact Registry con helm installa .
helm install RELEASE \
oci://LOCATION-docker.pkg.dev/PROJECT/REPOSITORY/IMAGE \
--version VERSION
L'esempio seguente installa una release denominata release1
utilizzando la versione 0.1.0
del grafico us-west1-docker.pkg.dev/nyap-test/helm-repo/my-chart
:
helm install release1 oci://us-west1-docker.pkg.dev/nyap-test/helm-repo/my-chart --version 0.1.0
Grafici elenco
Puoi elencare i grafici utilizzando la console Google Cloud o la riga di comando. Se archiviare immagini container e grafici nello stesso repository Docker, i tipi di artefatti vengono visualizzati nell'elenco.
Console
Per visualizzare le immagini in un repository:
Apri la pagina Repository nella console Google Cloud.
Fai clic sul repository con l'immagine container.
Fai clic su un'immagine per visualizzarne le versioni.
gcloud
Per elencare tutte le immagini nel progetto, nel repository e posizione quando sono configurati i valori predefiniti:
gcloud artifacts docker images list
Per elencare le immagini in un repository in una località specifica, esegui :
gcloud artifacts docker images list LOCATION-docker.pkg.dev/PROJECT/REPOSITORY
Per elencare tutti i digest e i tag per un'immagine specifica, esegui il comando:
gcloud artifacts docker images list LOCATION-docker.pkg.dev/PROJECT/REPOSITORY/IMAGE \
--include-tags
Sostituisci i seguenti valori:
- LOCATION è il una o più regioni località del repository.
- PROJECT è il tuo account Google Cloud ID progetto. Se l'ID progetto contiene i due punti (":"), vedi Progetti con ambito dominio.
- REPOSITORY è il nome del repository in cui l'immagine viene archiviato.
- IMAGE è il nome dell'immagine nel repository.
--include-tags
mostra tutte le versioni delle immagini, inclusi sintesi e i tag. Se questo flag viene omesso, l'elenco restituito include solo immagini container di primo livello.
Ad esempio, considera un'immagine con le seguenti caratteristiche:
- Località del repository:
us-west1
- Nome repository:
my-repo
- ID progetto:
my-project
- Nome immagine:
my-image
Il nome completo del repository è:
us-west1-docker.pkg.dev/my-project/my-repo
Il nome completo dell'immagine è:
us-west1-docker.pkg.dev/my-project/my-repo/my-image
Per maggiori dettagli sul formato dei nomi delle immagini, vedi Nomi di repository e immagini.
Elenco dei file
Puoi elencare i file di un repository, i file in tutte le versioni di un container o i file di una specifica versione di un'immagine.
Per tutti i comandi seguenti, puoi impostare un numero massimo di file da restituire
aggiungendo il flag --limit
al comando.
Per elencare tutti i file nel progetto, nel repository e posizione quando sono configurati i valori predefiniti:
gcloud artifacts files list
Per elencare i file in un progetto, un repository e una posizione specifici, esegui il comando:
gcloud artifacts files list \
--project=PROJECT \
--repository=REPOSITORY \
--location=LOCATION
Per elencare i file di tutte le versioni di un'immagine container specifica:
gcloud artifacts files list \
--project=PROJECT \
--repository=REPOSITORY \
--location=LOCATION \
--package=PACKAGE
Per elencare i file per una versione specifica dell'immagine container:
gcloud artifacts files list \
--project=PROJECT \
--repository=REPOSITORY \
--location=LOCATION \
--package=PACKAGE \
--version=VERSION
Per elencare i file per un tag specifico:
gcloud artifacts files list \
--project=PROJECT \
--repository=REPOSITORY \
--location=LOCATION \
--package=PACKAGE \
--tag=TAG
Sostituisci i seguenti valori:
LOCATION
: il valore una o più regioni località del repository.PROJECT
: il tuo account Google Cloud ID progetto. Se l'ID progetto contiene i due punti (":"), vedi Progetti con ambito dominio.REPOSITORY
: il nome del repository in cui è stata creata l'immagine viene archiviato.PACKAGE
: il nome dell'immagine.VERSION
: il digest dell'immagine, una stringa che inizia consha256:
.TAG
: il tag associato all'immagine container.
Eliminazione delle immagini
In un repository Artifact Registry, puoi eliminare un intero container un'immagine o eliminare una specifica versione dell'immagine associata a un tag o digest. Una volta Se hai eliminato un'immagine, l'azione non può essere annullata.
Per eliminare un'immagine archiviata in Artifact Registry:
Console
Apri la pagina Repository nella console Google Cloud.
Fai clic sul nome dell'immagine per visualizzarne le versioni.
Seleziona le versioni da eliminare.
Fai clic su ELIMINA.
Nella finestra di dialogo di conferma, fai clic su ELIMINA.
gcloud
Per eliminare un'immagine e tutti i relativi tag, esegui il comando:
gcloud artifacts docker images delete LOCATION-docker.pkg.dev/PROJECT/REPOSITORY/IMAGE --delete-tags
Per eliminare una specifica versione dell'immagine, utilizza uno dei seguenti comandi.
gcloud artifacts docker images delete LOCATION-docker.pkg.dev/PROJECT/REPOSITORY/IMAGE:TAG [--delete-tags]
o
gcloud artifacts docker images delete LOCATION-docker.pkg.dev/PROJECT/REPOSITORY/IMAGE@IMAGE-DIGEST [--delete-tags]
Dove
- LOCATION è il una o più regioni località del repository.
- PROJECT è il tuo account Google Cloud ID progetto. Se l'ID progetto contiene i due punti (":"), vedi Progetti con ambito dominio.
- REPOSITORY è il nome del repository in cui l'immagine viene archiviato.
- IMAGE è il nome dell'immagine nel repository.
- TAG è il tag della versione da eliminare.
Se alla stessa versione immagine sono associati più tag,
devi includere
--delete-tags
per eliminare la versione dell'immagine senza rimuovendo prima i tag. - IMAGE-DIGEST è il valore hash sha256 per la versione
da eliminare. Se un tag è associato al digest immagine,
devi includere
--delete-tags
per eliminare la versione dell'immagine senza prima di rimuovere il tag. --delete-tags
rimuove tutti i tag applicati alla versione immagine. Questo flag consente di forzare l'eliminazione di una versione immagine quando:- Hai specificato un tag, ma sono presenti altri tag associati al tag dell'immagine.
- Hai specificato un digest immagine che ha almeno un tag.
Passaggi successivi
- Scopri di più sulla gestione delle immagini Docker.
- Scaricare singoli file dal tuo repository senza usare i comandi Helm.