Stocker des packages Conda dans Artifact Registry
Ce guide de démarrage rapide vous explique comment configurer un dépôt Conda Artifact Registry privé, puis y importer un package.
Avant de commencer
- Connectez-vous à votre compte Google Cloud . Si vous débutez sur Google Cloud, créez un compte pour évaluer les performances de nos produits en conditions réelles. Les nouveaux clients bénéficient également de 300 $ de crédits sans frais pour exécuter, tester et déployer des charges de travail.
-
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.
-
- Pour utiliser la CLI Conda dans votre environnement Google Cloud , installez l'un des gestionnaires de packages Conda suivants :
Lancer Cloud Shell
Dans ce guide de démarrage rapide, vous allez utiliser Cloud Shell, un environnement shell permettant de gérer les ressources hébergées surGoogle Cloud.
Cloud Shell est préinstallé avec la Google Cloud CLI et Conda. gcloud CLI fournit l'interface de ligne de commande principale pour Google Cloud.
Lancez Cloud Shell :
Accédez à la console Google Cloud .
Dans la barre d'outils de la console Google Cloud , cliquez sur Activer Cloud Shell.
Une session Cloud Shell s'ouvre dans un cadre situé en bas de la console.
Cette interface système vous permet d'exécuter les commandes gcloud.
Configurer l'authentification
Un canal Conda est l'adresse d'un emplacement où sont stockés un ou plusieurs packages Conda. Avant de pouvoir installer des packages dans votre environnement Conda, vous devez ajouter le canal correspondant à ce package dans votre fichier de configuration Conda.
Pour permettre à la CLI Conda d'appeler directement Artifact Registry, vous devez authentifier votre canal Conda dans Google Cloud en procédant comme suit :
Dans gcloud CLI, exécutez la commande suivante pour stocker l'identité d'un jeton
oauthdans une variable TOKEN :export TOKEN="oauth2accesstoken:$(gcloud auth print-access-token)"Ajoutez votre dépôt Conda en tant que canal dans votre fichier de configuration 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/REPOSITORYOù :
- TOKEN stocke la valeur du jeton
oauthgénéré en exécutantoauth2accesstoken:$(gcloud auth print-access-token). - LOCATION est l'emplacement régional ou multirégional du dépôt.
- PROJECT est l'ID du projet contenant le dépôt.
- REPOSITORY est l'ID du dépôt.
- TOKEN stocke la valeur du jeton
Actualiser un jeton oauth expiré
Un jeton oauth expire au bout d'une heure. Pour réauthentifier votre chaîne avec un nouveau jeton, procédez comme suit :
Supprimez votre chaîne de votre fichier de configuration :
Conda
conda config --remove channels CHANNEL_NAMEMiniforge
conda config --remove channels CHANNEL_NAMEMamba
mamba config --remove channels CHANNEL_NAMEMicromamba
micromamba config --remove channels CHANNEL_NAMESuivez l'étape précédente qui décrit la création d'un jeton
oauth.Ajoutez de nouveau votre dépôt Conda à votre fichier de configuration Conda, en utilisant votre nouvelle valeur de jeton.
Créer un dépôt
Créez le dépôt pour votre package.
Exécutez la commande suivante pour créer un dépôt Conda dans le projet actuel nommé
quickstart-conda-repoà l'emplacementus-west1.gcloud artifacts repositories create quickstart-conda-repo \ --repository-format=conda \ --location=us-west1 \ --description="Conda repository"Exécutez la commande suivante pour vérifier que votre dépôt a bien été créé :
gcloud artifacts repositories listPour simplifier les commandes
gcloud, définissez le dépôt par défaut surquickstart-conda-repoet l'emplacement par défaut surus-west1. Une fois les valeurs définies, vous n'avez pas besoin de les spécifier dans les commandesgcloudnécessitant un dépôt ou un emplacement.Pour définir le dépôt, exécutez la commande suivante :
gcloud config set artifacts/repository quickstart-conda-repoPour définir l'emplacement, exécutez la commande suivante :
gcloud config set artifacts/location us-west1Pour plus d'informations sur ces commandes, consultez la documentation gcloud config set.
Importer le package dans le dépôt
Pour importer un package dans votre dépôt, exécutez la commande suivante :
gcloud artifacts files upload \
--source=PACKAGE_NAME \
--repository=REPO_NAME\
--project=PROJECT \
--location=LOCATION
Où :
- REPO_NAME est l'ID du dépôt.
- PROJECT est l'ID du projet contenant le dépôt.
- LOCATION est l'emplacement régional ou multirégional du dépôt.
Pour importer plusieurs packages à la fois :
gcloud artifacts files upload \
--source-directory="DIRECTORY" \
--repository="REPO_NAME"\
--project="PROJECT" \
--location="LOCATION"
Où :
- DIRECTORY est l'adresse d'un dossier local contenant vos packages Conda.
Afficher le package dans le dépôt
Pour vérifier que votre package a bien été ajouté, listez les packages dans le dépôt quickstart-conda-repo.
Exécutez la commande suivante :
gcloud artifacts packages list --repository=quickstart-conda-repo
Pour afficher les versions d'un package, exécutez la commande suivante :
gcloud artifacts versions list --package=PACKAGE_NAME
Pour afficher les fichiers d'une version de package, exécutez la commande suivante :
gcloud artifacts files list --package=PACKAGE_NAME --version=VERSION
Installer le package
Pour installer le package que vous venez d'ajouter à votre dépôt Artifact Registry, exécutez la commande suivante :
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
Où :
- ENVIRONMENT_NAME est le nom de votre environnement Conda.
- PACKAGE_NAME est le nom du package à installer dans votre dépôt.
Dépannage
Pour en savoir plus, consultez Dépannage des packages Conda.
Effectuer un nettoyage
Pour éviter que les ressources utilisées dans cette démonstration soient facturées sur votre compte Google Cloud , procédez comme suit :
Avant de supprimer le dépôt, assurez-vous que tous les packages que vous souhaitez conserver sont disponibles à un autre emplacement.
Pour supprimer le dépôt
quickstart-conda-repo, exécutez la commande suivante :gcloud artifacts repositories delete quickstart-conda-repoSi vous souhaitez supprimer le dépôt par défaut et les paramètres d'emplacement que vous avez définis pour la configuration
gcloudactive, exécutez les commandes suivantes :gcloud config unset artifacts/repository gcloud config unset artifacts/location
Étapes suivantes
- En savoir plus sur la configuration de l'authentification
- En savoir plus sur la gestion des dépôts
- Découvrir comment gérer les packages.
- Consultez nos ressources sur le DevOps et découvrez notre programme de recherche.