Artifact Registry est le service recommandé pour gérer les images de conteneurs. Container Registry demeure compatible, mais ne recevra que les correctifs de sécurité critiques. En savoir plus sur la transition vers Artifact Registry.

Guide de démarrage rapide pour Container Registry

Ce guide de démarrage rapide explique comment configurer Docker pour Container Registry, puis transférer et extraire une image.

Google Cloud propose deux services pour stocker et gérer les images de conteneurs:

Artifact Registry (recommandé)

Service permettant de stocker et gérer les artefacts des dépôts privés, y compris les images de conteneurs, les charts Helm et les packages de langages Il s'agit du registre d'image de conteneur recommandé pour Google Cloud.

Consultez le guide de démarrage rapide pour Docker pour vous familiariser avec Artifact Registry.

Container Registry

Registre d'images de conteneurs privé compatible avec les formats d'images Docker Image Manifest V2 et OCI Il fournit un sous-ensemble de fonctionnalités d'Artifact Registry.

Si vous n'utilisez pas Container Registry, utilisez plutôt Artifact Registry. Pour comparer le service Container Registry et Artifact Registry et obtenir des informations sur le passage de Container Registry à Artifact Registry, consultez la page Effectuer une transition depuis Container Registry.

Avant de commencer

  1. 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 gratuits pour exécuter, tester et déployer des charges de travail.
  2. Dans Google Cloud Console, sur la page de sélection du projet, sélectionnez ou créez un projet Google Cloud.

    Accéder au sélecteur de projet

  3. Assurez-vous que la facturation est activée pour votre projet Cloud. Découvrez comment vérifier si la facturation est activée sur un projet.

  4. Activez l'API Container Registry

    Activer l'API

  5. Dans Google Cloud Console, sur la page de sélection du projet, sélectionnez ou créez un projet Google Cloud.

    Accéder au sélecteur de projet

  6. Assurez-vous que la facturation est activée pour votre projet Cloud. Découvrez comment vérifier si la facturation est activée sur un projet.

  7. Activez l'API Container Registry

    Activer l'API

Choisir une interface système

Pour suivre ce guide de démarrage rapide, utilisez Cloud Shell ou votre interface système locale.

Cloud Shell
Cloud Shell est un environnement shell permettant de gérer les ressources hébergées sur Google Cloud. Il est préinstallé avec Docker et la CLI Google Cloud, l'interface de ligne de commande principale pour Google Cloud.
Interface système locale
Si vous préférez utiliser votre interface système locale, vous devez installer Docker et la CLI gcloud dans votre environnement.

Démarrer Cloud Shell

Pour lancer Cloud Shell, procédez comme suit :

  1. Accédez à Google Cloud Console.

    Google Cloud Console

  2. Dans la barre de menu, cliquez sur le bouton Activate Cloud Shell (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 une interface système locale

Pour installer gcloud et Docker, procédez comme suit :

  1. Installez la CLI gcloud. Pour mettre à jour une installation existante, exécutez la commande gcloud components update.

  2. Installez Docker si ce n'est pas encore fait.

  3. Docker nécessite un accès privilégié pour interagir avec les registres. Sous Linux ou Windows, ajoutez l'utilisateur que vous permet d'exécuter des commandes Docker dans le groupe de sécurité Docker. Cette étape n'est pas requise sous macOS, car Docker Desktop s'exécute sur une machine virtuelle en tant qu'utilisateur racine.

    Linux

    Le groupe de sécurité Docker s'appelle docker. Pour ajouter votre nom d'utilisateur, exécutez la commande suivante :

    sudo usermod -a -G docker ${USER}
    

    Windows

    Le groupe de sécurité Docker s'appelle docker-users. Pour ajouter un utilisateur à partir de l'invite de commande administrateur, exécutez la commande suivante :

    net localgroup docker-users DOMAIN\USERNAME /add
    

    • DOMAIN est votre domaine Windows.
    • USERNAME est votre nom d'utilisateur.
  4. Déconnectez-vous et reconnectez-vous pour que les modifications apportées à la liste des membres du groupe soient appliquées. Si vous utilisez une machine virtuelle, vous devrez peut-être la redémarrer pour que ces modifications prennent effet.

  5. Pour vérifier que Docker est en cours d'exécution, utilisez la commande Docker suivante, qui renvoie la date et l'heure actuelles :

  6. docker run busybox date
    

Configurer l'authentification

Avant de pouvoir transférer ou extraire des images, vous devez configurer Docker pour qu'il utilise la CLI Google Cloud pour authentifier les requêtes auprès de Container Registry.

Exécutez la commande suivante :

gcloud auth configure-docker

La commande met à jour votre configuration Docker. Vous pouvez désormais vous connecter à Container Registry dans votre projet Google Cloud pour stocker et extraire des images.

Obtenir une image à stocker

Pour ce guide de démarrage rapide, vous allez stocker un exemple d'image nommée hello-app.

  1. Définissez le répertoire dans lequel vous souhaitez enregistrer l'image.
  2. Exécutez la commande suivante pour extraire la version 1.0 de l'image.

    docker pull gcr.io/google-samples/hello-app:1.0
    

Ajouter l'image dans Container Registry

Pour ajouter une image à Container Registry, vous devez lui appliquer un tag, puis la transférer vers le registre.

Ajouter un tag de nom de registre à l'image

Cette action permet de configurer la commande docker push grâce à laquelle vous pouvez stocker l'image dans un emplacement précis. L'emplacement d'hôte utilisé dans ce guide de démarrage rapide est gcr.io.

Exécutez la commande suivante pour ajouter des tags à l'image en tant que quickstart-image:tag1 :

docker tag gcr.io/google-samples/hello-app:1.0 gcr.io/PROJECT_ID/quickstart-image:tag1

Remplacez les éléments suivants :

  • PROJECT-ID est votre ID de projet Google Cloud Console, que vous devez ajouter à votre commande. Si l'ID du projet contient le signe deux-points (:), consultez la section Projets à l'échelle du domaine.
  • gcr.io correspond au nom d'hôte.
  • quickstart-image est le nom de l'image Docker.
  • tag1 est un tag que vous ajoutez à l'image Docker. Si vous ne spécifiez pas de tag, Docker applique le tag par défaut latest.

Vous êtes maintenant prêt à stocker votre image dans Container Registry.

Stocker l'image dans Container Registry

Une fois que vous avez configuré l'authentification et tagué l'image locale, vous pouvez stocker l'image dans le dépôt que vous avez créé.

Pour stocker l'image Docker, exécutez la commande suivante :

docker push gcr.io/PROJECT_ID/quickstart-image:tag1

PROJECT_ID est l'ID de votre projet dans Google Cloud Console. Si l'ID du projet contient le signe deux-points (:), consultez la section Projets à l'échelle du domaine.

Lorsque vous stockez une image dans un nouvel emplacement hôte, le service crée un bucket de stockage sous-jacent unique pour votre projet. Vous pouvez afficher les images hébergées par Container Registry via Cloud Console ou en accédant au nom du registre de l'image dans votre navigateur Web : http://gcr.io/PROJECT_ID/quickstart-image.

Extraire l'image de Container Registry

Pour extraire l'image de Container Registry vers votre ordinateur local, exécutez la commande suivante :

docker pull gcr.io/PROJECT_ID/quickstart-image:tag1

Remplacez PROJECT_ID par l'ID de votre projet dans Google Cloud Console. Si l'ID du projet contient le signe deux-points (:), consultez la section Projets à l'échelle du domaine.

Le résultat doit être semblable à ceci :

latest: Pulling from my-project/quickstart-image:tag1
Digest: sha256:70c42...
Status: Image is up to date for gcr.io/my-project/quickstart-image:tag1

Effectuer un nettoyage

Pour éviter que les ressources utilisées sur cette page ne soient facturées sur votre compte Google Cloud, procédez comme suit :

Exécutez la commande suivante pour supprimer l'image Docker de Container Registry.

gcloud container images delete gcr.io/PROJECT_ID/quickstart-image:tag1 --force-delete-tags

Remplacez PROJECT_ID par l'ID de votre projet dans Google Cloud Console. Si l'ID du projet contient le signe deux-points (:), consultez la section Projets à l'échelle du domaine.

Étapes suivantes