Tutoriel : créer une instance Azure Container Registry (ACR) et générer des images

Azure Container Registry (ACR) est un registre privé destiné d’images de conteneur. Un registre de conteneurs privé vous permet de générer et de déployer vos applications et codes personnalisés en toute sécurité.

Au cours de ce didacticiel, le deuxième d’une série de sept, vous allez déployer une instance ACR et lui envoyer une image conteneur par une transmission de type push. Vous allez apprendre à effectuer les actions suivantes :

  • Créez une instance ACR.
  • Utilisez les tâches ACR pour générer et envoyer (push) des images conteneur vers l’instance ACR.
  • Visualisez les images figurant dans votre registre.

Avant de commencer

Dans le tutoriel précédent, vous avez utilisé Docker pour créer une image conteneur pour une application Azure Store Front simple. Si vous n’avez pas créé l’image de l’application de Azure Store Front, revenez au Tutoriel 1 : préparer une application pour AKS.

Ce tutoriel nécessite Azure CLI version 2.0.53 ou ultérieure. Exécutez az --version pour trouver la version. Si vous devez installer ou mettre à niveau, voir Installer Azure CLI.

Création d’un Azure Container Registry

Avant de créer une instance ACR, il vous faut un groupe de ressources. Un groupe de ressources Azure est un conteneur logique dans lequel vous déployez et gérez des ressources Azure.

Important

Ce tutoriel utilise myResourceGroup comme espace réservé pour le nom du groupe de ressources. Si vous souhaitez utiliser un autre nom, remplacez myResourceGroup par le nom désiré du groupe de ressources.

  1. Créez un groupe de ressources avec la commande az group create.

    az group create --name myResourceGroup --location eastus
    
  2. Créez une instance ACR avec la commande az acr create et fournissez votre propre nom de registre unique. Le nom du registre doit être unique dans Azure et contenir entre 5 et 50 caractères alphanumériques. Le reste de ce didacticiel utilise une variable d’environnement, $ACRNAME, comme espace réservé pour le nom du registre de conteneurs. Vous pouvez définir cette variable d’environnement sur votre nom ACR unique à utiliser dans les futures commandes. La référence SKU De base est un point d’entrée au coût optimisé fourni à des fins de développement qui offre un bon équilibre entre stockage et débit.

    az acr create --resource-group myResourceGroup --name $ACRNAME --sku Basic
    

Générer et envoyer (push) des images conteneur dans le registre

  • Générez et envoyez (push) les images à votre instance ACR à l’aide de la commande az acr build Azure CLI.

    Remarque

    Pour cette étape, il n’existe pas de cmdlet Azure PowerShell équivalente qui effectue cette tâche.

    Dans l’exemple suivant, nous ne générons pas l’image rabbitmq. Cette image est disponible à partir du référentiel public Docker Hub et n’a pas besoin d’être générée ou envoyée (push) à votre instance ACR.

    az acr build --registry $ACRNAME --image aks-store-demo/product-service:latest ./src/product-service/
    az acr build --registry $ACRNAME --image aks-store-demo/order-service:latest ./src/order-service/
    az acr build --registry $ACRNAME --image aks-store-demo/store-front:latest ./src/store-front/
    

Créer la liste des images du registre

  • Affichez les images dans votre instance ACR à l’aide de la commande az acr repository list.

    az acr repository list --name $ACRNAME --output table
    

    L’exemple de sortie suivant répertorie les images disponibles dans votre registre :

    Result
    ----------------
    aks-store-demo/product-service
    aks-store-demo/order-service
    aks-store-demo/store-front
    

Étapes suivantes

Dans le cadre de ce didacticiel, vous avez créé une instance ACR et lui avez envoyé des images à utiliser dans un cluster AKS. Vous avez appris à :

  • Créez une instance ACR.
  • Utilisez les tâches ACR pour générer et envoyer (push) des images conteneur vers l’instance ACR.
  • Visualisez les images figurant dans votre registre.

Dans le didacticiel suivant, vous découvrirez comment déployer un cluster Kubernetes dans Azure.