Tutoriel : Créer un Azure Container Registry pour AKS activé par Arc

S’applique à : AKS sur Azure Stack HCI 22H2, AKS sur Windows Server

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

Dans ce tutoriel, deuxième partie sur sept, vous déployez une Azure Container Registry instance et envoyez-y une image conteneur pour une utilisation dans AKS. Vous découvrirez comment effectuer les actions suivantes :

  • Créer une instance Azure Container Registry
  • Baliser une image conteneur pour Azure Container Registry
  • Charger l’image dans Azure Container Registry
  • Visualiser les images figurant dans votre registre

Dans les didacticiels ultérieurs, cette Azure Container Registry instance est intégrée à un cluster Kubernetes et une application est déployée à partir de l’image.

Avant de commencer

Dans le tutoriel précédent, vous avez vu comment créer une image conteneur pour une application de vote Azure simple. Si vous n’avez pas créé l’image de l’application Azure Vote, retournez au Didacticiel 1 : Créer des images conteneur.

Ce tutoriel exige que vous exécutiez 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

Pour créer un Azure Container Registry instance, vous avez d’abord besoin d’un groupe de ressources. Un groupe de ressources Azure est un conteneur logique dans lequel les ressources Azure sont déployées et gérées.

Créez un groupe de ressources avec la commande az group create. Dans l’exemple suivant, un groupe de ressources nommé myResourceGroup est créé dans la région eastus :

az group create --name myResourceGroup --location eastus

Créez une instance Azure Container Registry avec la commande az acr create et fournissez votre propre nom de registre. Le nom du registre doit être unique dans Azure et contenir entre 5 et 50 caractères alphanumériques. Dans le reste de ce didacticiel, <acrName> est utilisé comme espace réservé pour le nom du registre de conteneurs. Indiquez un nom de registre unique. 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

Se connecter au registre de conteneurs

Pour utiliser l’instance ACR, vous devez commencer par vous y connecter. Utilisez la commande az acr login et fournissez le nom unique donné au registre de conteneurs à l’étape précédente :

az acr login --name <acrName>

La commande retourne un message Connexion réussie une fois terminée.

Baliser une image conteneur

Pour afficher la liste des images locales actuelles, utilisez la commande docker images :

docker images

La sortie de cette commande affiche une liste de vos images locales actuelles :

REPOSITORY                                     TAG                 IMAGE ID            CREATED             SIZE
mcr.microsoft.com/azuredocs/azure-vote-front   v1                  84b41c268ad9        7 minutes ago       944MB
mcr.microsoft.com/oss/bitnami/redis            6.0.8               3a54a920bb6c        2 days ago          103MB
tiangolo/uwsgi-nginx-flask                     python3.6           a16ce562e863        6 weeks ago         944MB

Pour utiliser l’image conteneur azure-vote-front avec Azure Container Registry, veillez à marquer l’image avec l’adresse du serveur de connexion de votre registre. Cette balise est utilisée pour l’acheminement lors de l’envoi des images de conteneur dans un registre d’images.

Pour obtenir l’adresse du serveur de connexion, utilisez la commande az acr list et exécutez une requête portant sur l’élément loginServer, comme suit :

az acr list --resource-group myResourceGroup --query "[].{acrLoginServer:loginServer}" --output table

À présent, étiquetez votre image azure-vote-front locale avec l’adresse acrLoginServer du registre de conteneurs. Pour indiquer la version de l’image, ajoutez :v1 à la fin du nom de l’image :

docker tag mcr.microsoft.com/azuredocs/azure-vote-front:v1 <acrLoginServer>/azure-vote-front:v1

Pour vérifier que les balises sont appliquées, réexécutez les images Docker :

docker images

Une image est étiquetée avec l’adresse Azure Container Registry instance et un numéro de version :

REPOSITORY                                      TAG                 IMAGE ID            CREATED             SIZE
mcr.microsoft.com/azuredocs/azure-vote-front    v1                  84b41c268ad9        16 minutes ago      944MB
mycontainerregistry.azurecr.io/azure-vote-front v1                  84b41c268ad9        16 minutes ago      944MB
mcr.microsoft.com/oss/bitnami/redis             6.0.8               3a54a920bb6c        2 days ago          103MB
tiangolo/uwsgi-nginx-flask                      python3.6           a16ce562e863        6 weeks ago         944MB

Envoyer des images au registre

Une fois votre image créée et étiquetée, envoyez-la à votre Azure Container Registry instance. Utilisez docker push et fournissez votre propre acrLoginServer adresse pour le nom de l’image comme suit :

docker push <acrLoginServer>/azure-vote-front:v1

L’envoi de l’image à Azure Container Registry peut prendre quelques minutes.

Créer la liste des images du registre

Pour renvoyer une liste d’images qui ont été envoyées à votre Azure Container Registry instance, utilisez la commande az acr repository list. Fournissez votre propre <acrName>, comme suit :

az acr repository list --name <acrName> --output table

L’exemple de sortie ci-après répertorie l’image azure-vote-front comme étant disponible dans le registre :

Result
----------------
azure-vote-front

Pour afficher les balises d’une image spécifique, utilisez la commande az acr repository show-tags :

az acr repository show-tags --name <acrName> --repository azure-vote-front --output table

L’exemple de sortie ci-après présente l’image v1 balisée lors d’une étape précédente :

Result
--------
v1

Vous disposez désormais d’une image conteneur stockée dans une instance Azure Container Registry privée. Cette image est déployée à partir de Azure Container Registry vers un cluster Kubernetes dans le tutoriel suivant.

Étapes suivantes

Dans ce tutoriel, vous avez créé une Azure Container Registry et envoyé une image pour une utilisation dans un cluster Kubernetes. Vous avez appris à :

  • Créer une instance Azure Container Registry (ACR)
  • Marquer une image conteneur pour ACR
  • Charger l’image dans ACR
  • Visualiser les images figurant dans votre registre

Passez au didacticiel suivant pour découvrir comment déployer un cluster Kubernetes dans Azure.