Personnaliser des images de conteneurs Cloud Shell

Cette page explique comment créer et utiliser une image Docker personnalisée en tant qu'environnement Cloud Shell pour les tutoriels et les activités d'apprentissage.

Pour créer une expérience Cloud Shell personnalisée, créez une image Docker qui fonctionne comme un environnement Cloud Shell personnalisé avec les packages et configurations personnalisées de votre choix. Votre image Docker doit être basée sur l'image Cloud Shell de base et être hébergée dans Container Registry.

Créer une image Docker personnalisée


Pour obtenir des instructions détaillées sur cette tâche directement dans l'éditeur Cloud Shell, cliquez sur Visite guidée :

Visite guidée


Créez votre propre image Docker personnalisée en suivant les instructions suivantes :

  1. Dans un onglet de terminal Cloud Shell, exécutez la commande suivante pour créer une image personnalisée récurrente dans un dépôt hébergé par Cloud Source Repositories:

    cloudshell env create-custom-image NEW_REPO_NAME
    

    Si vous préférez effectuer un déploiement manuel dans Container Registry ou utiliser votre propre flux d'automatisation, vous pouvez créer un fichier Dockerfile vide et passer à l'étape 3.

  2. Ouvrez votre nouveau fichier Dockerfile en suivant les instructions affichées sur votre ligne de commande :

    cd $HOME/NEW_REPO_NAME && cloudshell edit Dockerfile
    
  3. Ajoutez sous la première ligne les packages supplémentaires que vous souhaitez rendre disponibles dans votre expérience Cloud Shell. Exemple :

    FROM gcr.io/cloudshell-images/cloudshell:latest
    RUN apt-get -y install lsof
    

    La première ligne de votre fichier Dockerfile, FROM gcr.io/cloudshell-images/cloudshell:latest, fait référence à l'image Cloud Shell de base et ne doit pas être supprimée.

  4. Créez votre image en local en exécutant la commande suivante :

    cloudshell env build-local
    
  5. Testez votre image localement et vérifiez que vos packages installés sont présents en exécutant la commande suivante :

    cloudshell env run
    

    Pour quitter les tests, exécutez :

    exit
    
  6. Validez vos modifications de code en local :

    git commit -a -m "Initial custom environment check-in."
    
  7. Déployez vos modifications de code dans Cloud Source Repositories :

    git push origin master
    
  8. Enfin, transférez votre image personnalisée vers Container Registry :

    cloudshell env push
    

Pour utiliser votre image personnalisée avec des liens Ouvrir dans Cloud Shell, vous devez d'abord la rendre publique. Pour rendre des images personnalisées publiques, suivez le guide de contrôle d'accès de Container Registry.

Une fois que vous avez configuré les paramètres d'accès appropriés, mettez à jour le lien Ouvrir dans Cloud Shell pour spécifier les paramètres cloudshell_git_repo et cloudshell_image. Par exemple, pour ajouter un bouton Ouvrir dans Cloud Shell, modifiez les URL dans l'exemple suivant, puis ajoutez un lien semblable à celui-ci à votre fichier Markdown:

[![Open in Cloud Shell](https://gstatic.com/cloudssh/images/open-btn.svg)](https://shell.cloud.google.com/cloudshell/editor?cloudshell_git_repo=REPO_URL&cloudshell_image=DOCKER_IMAGE_URL)

Remplacez les valeurs suivantes :

  • REPO_URL: URL de l'emplacement de votre dépôt
  • DOCKER_IMAGE_URL: URL de l'image Docker

Pour en savoir plus sur ces paramètres et les autres, consultez la section Ouvrir dans Cloud Shell.

Maintenir à jour l'image de conteneur personnalisée

Votre conteneur personnalisé doit être basé sur la dernière image Cloud Shell publique pour fonctionner dans Cloud Shell. Nous vous recommandons d'effectuer des recompilations hebdomadaires pour que l'image personnalisée soit toujours à jour.