Archiviare pacchetti Conda in Artifact Registry
Questa guida rapida mostra come configurare un repository Conda privato di Artifact Registry e poi caricare un pacchetto in questo repository.
Prima di iniziare
- Accedi al tuo account Google Cloud . Se non conosci Google Cloud, crea un account per valutare le prestazioni dei nostri prodotti in scenari reali. I nuovi clienti ricevono anche 300 $di crediti senza costi per l'esecuzione, il test e il deployment dei carichi di lavoro.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud 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 role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Artifact Registry API, if it is not already enabled.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). 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 Google Cloud 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 Google Cloud console, go to the IAM page.
Go to IAM - Select the project.
- Click Grant access.
-
In the New principals field, enter your user identifier. This is typically the email address for a Google Account.
- Click Select a role, then search for the role.
- To grant additional roles, click Add another role and add each additional role.
- Click Save.
-
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud 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 role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Artifact Registry API, if it is not already enabled.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). 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 Google Cloud 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 Google Cloud console, go to the IAM page.
Go to IAM - Select the project.
- Click Grant access.
-
In the New principals field, enter your user identifier. This is typically the email address for a Google Account.
- Click Select a role, then search for the role.
- To grant additional roles, click Add another role and add each additional role.
- Click Save.
-
- Per utilizzare la CLI Conda all'interno dell'ambiente Google Cloud , installa uno dei seguenti gestori di pacchetti Conda:
Avvia Cloud Shell
In questa guida rapida utilizzerai Cloud Shell, un ambiente shell per la gestione delle risorse ospitate su Google Cloud.
Cloud Shell include preinstallati Google Cloud CLI e Conda. gcloud CLI fornisce l'interfaccia a riga di comando principale per Google Cloud.
Avvia Cloud Shell:
Vai alla console Google Cloud .
Nella barra degli strumenti della console Google Cloud , fai clic su Attiva Cloud Shell.
Una sessione di Cloud Shell si apre in un frame nella parte inferiore della console.
Utilizza questa shell per eseguire i comandi gcloud.
Configura l'autenticazione
Un canale Conda è l'indirizzo di una posizione in cui sono archiviati uno o più pacchetti Conda. Prima di poter installare pacchetti nell'ambiente Conda, devi aggiungere il canale per quel pacchetto al file di configurazione Conda.
Per consentire all'interfaccia a riga di comando Conda di chiamare direttamente Artifact Registry, devi autenticare il tuo canale Conda in Google Cloud nel seguente modo:
In gcloud CLI, esegui questo comando per archiviare l'identità di un token
oauthin una variabile TOKEN:export TOKEN="oauth2accesstoken:$(gcloud auth print-access-token)"Aggiungi il repository Conda come canale nel file di configurazione di Conda:
Conda
conda config --add channels \ https://$TOKEN@LOCATION-conda.pkg.dev/PROJECT/REPOSITORYMiniforge
conda config --add channels \ https://$TOKEN@LOCATION-conda.pkg.dev/PROJECT/REPOSITORYMamba
mamba config --add channels \ https://$TOKEN@LOCATION-conda.pkg.dev/PROJECT/REPOSITORYMicromamba
micromamba config --add channels \ https://$TOKEN@LOCATION-conda.pkg.dev/PROJECT/REPOSITORYDove:
- TOKEN memorizza il valore del token
oauthgenerato eseguendooauth2accesstoken:$(gcloud auth print-access-token). - LOCATION è la posizione regionale o multiregionale del repository.
- PROJECT è l'ID del progetto contenente il repository.
- REPOSITORY è l'ID del repository.
- TOKEN memorizza il valore del token
Aggiornare un token oauth scaduto
Un token oauth scade dopo un'ora. Per eseguire nuovamente l'autenticazione del canale
con un nuovo token:
Rimuovi il canale dal file di configurazione:
Conda
conda config --remove channels CHANNEL_NAMEMiniforge
conda config --remove channels CHANNEL_NAMEMamba
mamba config --remove channels CHANNEL_NAMEMicromamba
micromamba config --remove channels CHANNEL_NAMESegui il passaggio precedente che descrive la creazione di un nuovo token
oauth.Aggiungi di nuovo il repository Conda al file di configurazione di Conda utilizzando il nuovo valore del token.
Crea un repository
Crea il repository per il pacchetto.
Esegui il comando seguente per creare un nuovo repository Conda nel progetto corrente denominato
quickstart-conda-reponella localitàus-west1.gcloud artifacts repositories create quickstart-conda-repo \ --repository-format=conda \ --location=us-west1 \ --description="Conda repository"Esegui questo comando per verificare che il repository sia stato creato:
gcloud artifacts repositories listPer semplificare i comandi
gcloud, imposta il repository predefinito suquickstart-conda-repoe la località predefinita suus-west1. Una volta impostati i valori, non è necessario specificarli nei comandigcloudche richiedono un repository o una posizione.Per impostare il repository, esegui questo comando:
gcloud config set artifacts/repository quickstart-conda-repoPer impostare la località, esegui questo comando:
gcloud config set artifacts/location us-west1Per ulteriori informazioni su questi comandi, consulta la documentazione di gcloud config set.
Carica il pacchetto nel repository
Per caricare un pacchetto nel repository, esegui questo comando:
gcloud artifacts files upload \
--source=PACKAGE_NAME \
--repository=REPO_NAME\
--project=PROJECT \
--location=LOCATION
Dove:
- REPO_NAME è l'ID del repository.
- PROJECT è l'ID del progetto contenente il repository.
- LOCATION è la posizione regionale o multiregionale del repository.
Per caricare più pacchetti contemporaneamente:
gcloud artifacts files upload \
--source-directory="DIRECTORY" \
--repository="REPO_NAME"\
--project="PROJECT" \
--location="LOCATION"
Dove:
- DIRECTORY è l'indirizzo di una cartella locale contenente i tuoi pacchetti Conda.
Visualizza il pacchetto nel repository
Per verificare che il pacchetto sia stato aggiunto, elenca i pacchetti nel repository
quickstart-conda-repo.
Esegui questo comando:
gcloud artifacts packages list --repository=quickstart-conda-repo
Per visualizzare le versioni di un pacchetto, esegui questo comando:
gcloud artifacts versions list --package=PACKAGE_NAME
Per visualizzare i file di una versione del pacchetto, esegui questo comando:
gcloud artifacts files list --package=PACKAGE_NAME --version=VERSION
Installa il pacchetto
Per installare il pacchetto che hai appena aggiunto al repository Artifact Registry, esegui questo comando:
Conda
conda install -n ENVIRONMENT_NAME PACKAGE_NAME
Miniforge
conda install -n ENVIRONMENT_NAME PACKAGE_NAME
Mamba
mamba install -n ENVIRONMENT_NAME PACKAGE_NAME
Micromamba
micromamba install -n ENVIRONMENT_NAME PACKAGE_NAME
Dove:
- ENVIRONMENT_NAME è il nome del tuo ambiente Conda.
- PACKAGE_NAME è il nome del pacchetto da installare nel repository.
Risoluzione dei problemi
Per ulteriori informazioni, consulta la sezione Risoluzione dei problemi relativi ai pacchetti Conda.
Esegui la pulizia
Per evitare che al tuo account Google Cloud vengano addebitati costi relativi alle risorse utilizzate in questa pagina, segui questi passaggi.
Prima di rimuovere il repository, assicurati che tutti i pacchetti che vuoi conservare siano disponibili in un'altra posizione.
Per eliminare il repository
quickstart-conda-repo, esegui questo comando:gcloud artifacts repositories delete quickstart-conda-repoSe vuoi rimuovere il repository predefinito e le impostazioni di posizione configurate per la configurazione
gcloudattiva, esegui i comandi seguenti:gcloud config unset artifacts/repository gcloud config unset artifacts/location
Passaggi successivi
- Scopri di più sulla configurazione dell'autenticazione.
- Scopri di più sulla gestione dei repository.
- Scopri di più sulla gestione dei pacchetti.
- Leggi le nostre risorse su DevOps ed esplora il nostro programma di ricerca.