Créer une instance à l'aide d'un conteneur personnalisé
Cette page explique comment créer une instance Vertex AI Workbench basée sur un conteneur personnalisé.
Présentation
Les instances Vertex AI Workbench permettent d'utiliser un conteneur personnalisé dérivé d'un conteneur de base fourni par Google. Vous pouvez modifier ce conteneur de base pour créer une image de conteneur personnalisé et utiliser ce conteneur personnalisé pour créer une instance Vertex AI Workbench.
Le conteneur de base est configuré avec un OS optimisé pour les conteneurs dans la machine virtuelle (VM) hôte. Le conteneur de base fournit des packages de data science préinstallés et des configurations spécifiques qui permettent à votre instance de s'intégrer à Google Cloud.
Le conteneur de base se trouve à l'emplacement gcr.io/deeplearning-platform-release/workbench-container:latest
.
Limites
Tenez compte des limites suivantes lors de la planification de votre projet :
Le conteneur personnalisé doit être dérivé du conteneur de base fourni par Google (
gcr.io/deeplearning-platform-release/workbench-container:latest
). L'utilisation d'un conteneur qui n'est pas dérivé du conteneur de base n'est pas prise en charge et augmente les risques de problèmes de compatibilité avec nos services.L'utilisation de plusieurs conteneurs avec une instance Vertex AI Workbench n'est pas possible.
Les métadonnées compatibles avec les conteneurs personnalisés des notebooks gérés par l'utilisateur et des notebooks gérés peuvent présenter un comportement différent lorsqu'elles sont utilisées avec des instances Vertex AI Workbench.
Avant de commencer
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Notebooks API.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Notebooks API.
Rôles requis
Pour vous assurer que votre compte utilisateur dispose des autorisations nécessaires pour créer une instance Vertex AI Workbench, demandez à votre administrateur d'accorder à votre compte utilisateur le rôle IAM Exécuteur de notebooks (roles/notebooks.runner
) sur le projet.
Pour en savoir plus sur l'attribution de rôles, consultez la page Gérer l'accès aux projets, aux dossiers et aux organisations.
Votre administrateur peut également attribuer à votre compte utilisateur les autorisations requises via des rôles personnalisés ou d'autres rôles prédéfinis.
Créer un conteneur personnalisé
Pour créer un conteneur personnalisé à utiliser avec les instances Vertex AI Workbench, procédez comme suit :
Créez un conteneur dérivé de l'image de conteneur de base fournie par Google (
gcr.io/deeplearning-platform-release/workbench-container:latest
).Créez et transférez le conteneur vers Artifact Registry. Vous utiliserez l'URI du conteneur lorsque vous créerez votre instance Vertex AI Workbench. Ce fichier pourrait par exemple ressembler à ceci :
gcr.io/PROJECT_ID/IMAGE_NAME
Créer l'instance
Vous pouvez créer une instance Vertex AI Workbench basée sur un conteneur personnalisé à l'aide de gcloud CLI.
Avant d'utiliser les données de la commande ci-dessous, effectuez les remplacements suivants :
-
INSTANCE_NAME
: nom de votre instance Vertex AI Workbench. Doit commencer par une lettre suivie de 62 caractères (lettres minuscules, chiffres ou traits d'union (-)) et ne peut pas se terminer par un trait d'union. PROJECT_ID
: ID de votre projet.LOCATION
: zone dans laquelle vous souhaitez placer votre instance.-
CUSTOM_CONTAINER_PATH
: chemin d'accès au dépôt d'images de conteneurs, par exemple :gcr.io/PROJECT_ID/IMAGE_NAME
-
METADATA
: métadonnées personnalisées à appliquer à cette instance. Par exemple, pour spécifier un script post-démarrage, vous pouvez utiliser le tag de métadonnéespost-startup-script
au format"--metadata=post-startup-script=gs://BUCKET_NAME/hello.sh"
.
Exécutez la commande suivante :
Linux, macOS ou Cloud Shell
gcloud workbench instances create INSTANCE_NAME \ --project=PROJECT_ID \ --location=LOCATION \ --container-repository=CUSTOM_CONTAINER_URL \ --container-tag=latest \ --metadata=METADATA
Windows (PowerShell)
gcloud workbench instances create INSTANCE_NAME ` --project=PROJECT_ID ` --location=LOCATION ` --container-repository=CUSTOM_CONTAINER_URL ` --container-tag=latest ` --metadata=METADATA
Windows (cmd.exe)
gcloud workbench instances create INSTANCE_NAME ^ --project=PROJECT_ID ^ --location=LOCATION ^ --container-repository=CUSTOM_CONTAINER_URL ^ --container-tag=latest ^ --metadata=METADATA
Pour en savoir plus sur la commande permettant de créer une instance à partir de la ligne de commande, consultez la documentation de gcloud CLI.
Exemple d'installation : conteneur personnalisé avec un kernel par défaut personnalisé
L'exemple suivant montre comment créer un kernel avec un paquet pip préinstallé.
Créez un conteneur personnalisé :
FROM gcr.io/deeplearning-platform-release/workbench-container:latest ENV MAMBA_ROOT_PREFIX=/opt/micromamba RUN micromamba create -n ENVIRONMENT_NAME -c conda-forge python=PYTHON_VERSION -y SHELL ["micromamba", "run", "-n", "ENVIRONMENT_NAME", "/bin/bash", "-c"] RUN micromamba install -c conda-forge pip -y RUN pip install PACKAGE RUN pip install ipykernel RUN python -m ipykernel install --prefix /opt/micromamba/envs/ENVIRONMENT_NAME --name ENVIRONMENT_NAME --display-name KERNEL_NAME
Ajoutez le nouveau conteneur dans Artifact Registry :
gcloud auth configure-docker REGION-docker.pkg.dev docker build -t REGION-docker.pkg.dev/PROJECT_ID/IMAGE_NAME . docker push REGION-docker.pkg.dev/PROJECT_ID/IMAGE_NAME:latest
Créez une instance :
gcloud workbench instances WBI_NAME \ --project=PROJECT_ID \ --location=ZONE \ --container-repository=REGION-docker.pkg.dev/PROJECT_ID/IMAGE_NAME \ --container-tag=latest
Accéder à votre instance
Vous pouvez accéder à votre instance via une URL de proxy.
Une fois votre instance créée et active, vous pouvez obtenir l'URL du proxy à l'aide de gcloud CLI.
Avant d'utiliser les données de la commande ci-dessous, effectuez les remplacements suivants :
-
INSTANCE_NAME
: nom de votre instance Vertex AI Workbench PROJECT_ID
: ID de votre projet.LOCATION
: zone où se trouve votre instance
Exécutez la commande suivante :
Linux, macOS ou Cloud Shell
gcloud workbench instances describe INSTANCE_NAME \ --project=PROJECT_ID \ --location=LOCATION | grep proxy-url
Windows (PowerShell)
gcloud workbench instances describe INSTANCE_NAME ` --project=PROJECT_ID ` --location=LOCATION | grep proxy-url
Windows (cmd.exe)
gcloud workbench instances describe INSTANCE_NAME ^ --project=PROJECT_ID ^ --location=LOCATION | grep proxy-url
proxy-url: 7109d1b0d5f850f-dot-datalab-vm-staging.googleusercontent.com
La commande describe
renvoie l'URL de votre proxy. Pour accéder à votre instance, ouvrez l'URL du proxy dans un navigateur Web.
Pour en savoir plus sur la commande permettant de créer une instance à partir de la ligne de commande, consultez la documentation de gcloud CLI.