Partager via


Démarrage rapide : déployer une instance de conteneur dans Azure à l’aide d’Azure PowerShell

Utilisez Azure Container Instances pour exécuter, facilement et rapidement, des conteneurs Docker serverless dans Azure. Déployez une application sur une instance de conteneur à la demande lorsque vous n’avez pas besoin d’une plateforme d’orchestration de conteneur complète telle qu’Azure Kubernetes Service.

Dans ce guide de démarrage rapide, vous utilisez Azure PowerShell pour déployer un conteneur Windows isolé et rendre son application disponible avec un nom de domaine complet (FQDN) et un port. Quelques secondes après l’exécution d’une seule commande de déploiement, vous pouvez accéder à l’application en cours d’exécution dans le conteneur :

![Application déployée sur Azure Container Instances affichée dans le navigateur][./media/container-instances-quickstart/view-an-application-running-in-an-azure-container-instance.png]

Si vous n’avez pas d’abonnement Azure, créez un compte gratuit avant de commencer.

Notes

Nous vous recommandons d’utiliser le module Azure Az PowerShell pour interagir avec Azure. Pour bien démarrer, consultez Installer Azure PowerShell. Pour savoir comment migrer vers le module Az PowerShell, consultez Migrer Azure PowerShell depuis AzureRM vers Az.

Azure Cloud Shell

Azure héberge Azure Cloud Shell, un environnement d’interpréteur de commandes interactif que vous pouvez utiliser dans votre navigateur. Vous pouvez utiliser Bash ou PowerShell avec Cloud Shell pour utiliser les services Azure. Vous pouvez utiliser les commandes préinstallées Cloud Shell pour exécuter le code de cet article sans avoir à installer quoi que ce soit dans votre environnement local.

Pour démarrer Azure Cloud Shell :

Option Exemple/Lien
Sélectionnez Essayer dans le coin supérieur droite d’un bloc de codes ou de commandes. La sélection de Essayer ne copie pas automatiquement le code ni la commande dans Cloud Shell. Capture d’écran présentant un exemple d’essai pour Azure Cloud Shell.
Accédez à https://shell.azure.com ou sélectionnez le bouton Lancer Cloud Shell pour ouvrir Cloud Shell dans votre navigateur. Bouton permettant de lancer Azure Cloud Shell.
Sélectionnez le bouton Cloud Shell dans la barre de menus en haut à droite du portail Azure. Capture d’écran présentant le bouton Cloud Shell dans le portail Azure.

Pour utiliser Azure Cloud Shell :

  1. Démarrez Cloud Shell.

  2. Sélectionnez le bouton Copier sur un bloc de codes (ou un bloc de commandes) pour copier le code ou la commande.

  3. Collez le code ou la commande dans la session Cloud Shell en sélectionnant Ctrl+Maj+V sur Windows et Linux ou en sélectionnant Cmd+Maj+V sur macOS.

  4. Sélectionnez Entrer pour exécuter le code ou la commande.

Si vous choisissez d’installer et d’utiliser PowerShell en local, vous devez exécuter le module Azure PowerShell pour les besoins de ce tutoriel. Exécutez Get-Module -ListAvailable Az pour trouver la version. Si vous devez effectuer une mise à niveau, consultez Installer le module Azure PowerShell. Si vous exécutez PowerShell en local, vous devez également lancer Connect-AzAccount pour créer une connexion avec Azure.

Créer un groupe de ressources

Les instances de conteneur Azure, comme toutes les ressources Azure, doivent être déployées dans un groupe de ressources. Les groupes de ressources vous permettent d’organiser et de gérer les ressources Azure connexes.

Commencez par créer un groupe de ressources nommé myResourceGroup à l’emplacement eastus, à l’aide de la commande New-AzResourceGroup suivante :

New-AzResourceGroup -Name myResourceGroup -Location EastUS

Créer un port pour votre instance de conteneur

Vous pouvez exposer vos conteneurs sur Internet en spécifiant un ou plusieurs ports à ouvrir, une étiquette de nom DNS ou les deux. Dans ce guide de démarrage rapide, vous déployez un conteneur avec une étiquette de nom DNS afin qu’il soit accessible publiquement. Dans ce guide, nous allons effectuer les deux opérations, mais tout d’abord, vous devez créer un objet de port dans PowerShell pour que votre instance de conteneur utilise.

$port = New-AzContainerInstancePortObject -Port 80 -Protocol TCP

Créer un groupe de conteneurs

Maintenant que vous disposez d’un groupe de ressources et d’un port, vous pouvez exécuter un conteneur exposé à Internet dans Azure. Pour créer une instance de conteneur avec Azure PowerShell, vous devez d’abord créer un ContainerInstanceObject en fournissant un nom, une image et un port pour le conteneur. Dans ce démarrage rapide, vous utilisez l’image mcr.microsoft.com/azuredocs/aci-helloworld publique.

New-AzContainerInstanceObject -Name myContainer -Image mcr.microsoft.com/azuredocs/aci-helloworld -Port @($port)

Ensuite, utilisez l’applet de commande New-AzContainerGroup. Vous devez fournir un nom pour le groupe de conteneurs, le nom de votre groupe de ressources, un emplacement pour le groupe de conteneurs, l’instance de conteneur que vous venez de créer, le type de système d’exploitation et une étiquette de nom DNS d’adresse IP unique.

Pour démarrer une instance de conteneur, exécutez une commande similaire à la suivante. Définissez une valeur -IPAddressDnsNameLabel être unique au sein de la région Azure dans laquelle vous créez l’instance. Si vous recevez un message d’erreur « Étiquette de nom DNS indisponible », essayez d’utiliser une autre étiquette de nom DNS.

$containerGroup = New-AzContainerInstanceObject -ResourceGroupName myResourceGroup -Name myContainerGroup -Location EastUS -Container myContainer -OsType Windows -IPAddressDnsNameLabel aci-quickstart-win -IpAddressType Public -IPAddressPort @($port)

Après quelques secondes, vous devez recevoir une réponse d’Azure. L’élément ProvisioningState du conteneur est initialement défini sur Création, mais doit passer à Réussite après une ou deux minutes. Vérifiez l’état du déploiement à l’aide de l’applet de commande Get-AzContainerGroup :

Get-AzContainerGroup -ResourceGroupName myResourceGroup -Name myContainerGroup

Vous pouvez également imprimer l'objet $containerGroup et filtrer le tableau en fonction de l'état d'approvisionnement du conteneur, du nom de domaine complet (FQDN) et de l'adresse IP.

$containerGroup | Format-Table InstanceViewState, IPAddressFqdn, IPAddressIP

L'état d'approvisionnement du conteneur, le nom de domaine complet et l'adresse IP apparaissent dans la sortie de l'applet de commande :

PS Azure:\> Get-AzContainerGroup -ResourceGroupName myResourceGroup -Name myContainerGroup

ResourceGroupName        : myResourceGroup
Id                       : /subscriptions/<Subscription ID>/resourceGroups/myResourceGroup/providers/Microsoft.ContainerInstance/containerGroups/myContainerGroup
Name                     : myContainerGroup
Type                     : Microsoft.ContainerInstance/containerGroups
Location                 : eastus
Tags                     :
ProvisioningState        : Creating
Containers               : {myContainer}
ImageRegistryCredentials :
RestartPolicy            : Always
IpAddress                : 52.226.19.87
DnsNameLabel             : aci-demo-win
Fqdn                     : aci-demo-win.eastus.azurecontainer.io
Ports                    : {80}
OsType                   : Windows
Volumes                  :
State                    : Pending
Events                   : {}

Si l’élément ProvisioningState du conteneur est défini sur Réussite, accédez à son nom de domaine complet dans votre navigateur. Si vous voyez une page web similaire à l’image suivante, félicitations ! Cela signifie que vous avez réussi à déployer une application s’exécutant dans un conteneur Docker sur Azure.

![Afficher une application déployée sur Azure Container Instances dans le navigateur][./media/container-instances-quickstart/view-an-application-running-in-an-azure-container-instance.png]

Nettoyer les ressources

Quand vous avez fini d’utiliser le conteneur, vous pouvez le supprimer avec l’applet de commande Remove-AzContainerGroup :

Remove-AzContainerGroup -ResourceGroupName myResourceGroup -Name myContainerGroup

Étapes suivantes

Dans ce guide de démarrage rapide, vous avez créé une instance de conteneur Azure à partir d’une image dans le registre du Hub Docker public. Si vous voulez créer une image conteneur et la déployer à partir d’un registre de conteneurs Azure privé, passez au didacticiel Azure Container Instances.