New-AzContainerGroup

Créez ou mettez à jour des groupes de conteneurs avec des configurations spécifiées.

Syntax

New-AzContainerGroup
   -Name <String>
   -ResourceGroupName <String>
   -Container <IContainer[]>
   -Location <String>
   [-SubscriptionId <String>]
   [-DnsConfigNameServer <String[]>]
   [-DnsConfigOption <String>]
   [-DnsConfigSearchDomain <String>]
   [-EncryptionPropertyKeyName <String>]
   [-EncryptionPropertyKeyVersion <String>]
   [-EncryptionPropertyVaultBaseUrl <String>]
   [-IdentityType <ResourceIdentityType>]
   [-IdentityUserAssignedIdentity <Hashtable>]
   [-ImageRegistryCredential <IImageRegistryCredential[]>]
   [-InitContainer <IInitContainerDefinition[]>]
   [-IPAddressDnsNameLabel <String>]
   [-IPAddressIP <String>]
   [-IPAddressPort <IPort[]>]
   [-IPAddressType <ContainerGroupIPAddressType>]
   [-LogAnalyticLogType <LogAnalyticsLogType>]
   [-LogAnalyticMetadata <Hashtable>]
   [-LogAnalyticWorkspaceId <String>]
   [-LogAnalyticWorkspaceKey <String>]
   [-LogAnalyticWorkspaceResourceId <String>]
   [-OSType <OperatingSystemTypes>]
   [-Priority <String>]
   [-RestartPolicy <ContainerGroupRestartPolicy>]
   [-Sku <ContainerGroupSku>]
   [-SubnetId <IContainerGroupSubnetId[]>]
   [-Tag <Hashtable>]
   [-Volume <IVolume[]>]
   [-Zone <String[]>]
   [-DefaultProfile <PSObject>]
   [-AsJob]
   [-NoWait]
   [-Confirm]
   [-WhatIf]
   [<CommonParameters>]

Description

Créez ou mettez à jour des groupes de conteneurs avec des configurations spécifiées.

Exemples

Exemple 1 : Créer un groupe de conteneurs avec une instance de conteneur et demander une adresse IP publique avec des ports ouvrants

$port1 = New-AzContainerInstancePortObject -Port 8000 -Protocol TCP
$port2 = New-AzContainerInstancePortObject -Port 8001 -Protocol TCP
$container = New-AzContainerInstanceObject -Name test-container -Image nginx -RequestCpu 1 -RequestMemoryInGb 1.5 -Port @($port1, $port2)
$containerGroup = New-AzContainerGroup -ResourceGroupName test-rg -Name test-cg -Location eastus -Container $container -OsType Linux -RestartPolicy "Never" -IpAddressType Public

Location Name    Zone ResourceGroupName
-------- ----    ---- -----------------
eastus   test-cg      test-rg

Cette commande crée un groupe de conteneurs avec une instance de conteneur, dont l’image est la plus récente nginx, et demande une adresse IP publique avec le port 8000 et 8001 ouvrant.

Exemple 2 : Créez un groupe de conteneurs et exécutez un script personnalisé à l’intérieur du conteneur.

$env1 = New-AzContainerInstanceEnvironmentVariableObject -Name "env1" -Value "value1"
$env2 = New-AzContainerInstanceEnvironmentVariableObject -Name "env2" -SecureValue (ConvertTo-SecureString -String "value2" -AsPlainText -Force)
$container = New-AzContainerInstanceObject -Name test-container -Image alpine -Command "/bin/sh -c myscript.sh" -EnvironmentVariable @($env1, $env2)
$containerGroup = New-AzContainerGroup -ResourceGroupName test-rg -Name test-cg -Location eastus -Container $container -OsType Linux

Location Name    Zone ResourceGroupName
-------- ----    ---- -----------------
eastus   test-cg      test-rg

Cette commande crée un groupe de conteneurs et exécute un script personnalisé à l’intérieur du conteneur.

Exemple 3 : Créer un groupe de conteneurs d’exécution à achèvement

$container = New-AzContainerInstanceObject -Name test-container -Image alpine -Command "echo hello" 
$containerGroup = New-AzContainerGroup -ResourceGroupName test-rg -Name test-cg -Location eastus -Container $container -OsType Linux

Location Name    Zone ResourceGroupName
-------- ----    ---- -----------------
eastus   test-cg      test-rg

Cette commande crée un groupe de conteneurs qui imprime « hello » et s’arrête.

Exemple 4 : Créer un groupe de conteneurs avec une instance de conteneur à l’aide de nginx d’image dans Azure Container Registry

$container = New-AzContainerInstanceObject -Name test-container -Image myacr.azurecr.io/nginx:latest
$imageRegistryCredential = New-AzContainerGroupImageRegistryCredentialObject -Server "myacr.azurecr.io" -Username "username" -Password (ConvertTo-SecureString "PlainTextPassword" -AsPlainText -Force) 
$containerGroup = New-AzContainerGroup -ResourceGroupName test-rg -Name test-cg -Location eastus -Container $container -ImageRegistryCredential $imageRegistryCredential

Location Name    Zone ResourceGroupName
-------- ----    ---- -----------------
eastus   test-cg      test-rg

Cette commande crée un groupe de conteneurs avec une instance de conteneur, dont l’image est nginx dans Azure Container Registry.

Exemple 5 : Créer un groupe de conteneurs avec une instance de conteneur à l’aide d’image nginx dans le Registre d’images conteneur personnalisées

$container = New-AzContainerInstanceObject -Name test-container -Image myserver.com/nginx:latest
$imageRegistryCredential = New-AzContainerGroupImageRegistryCredentialObject -Server "myserver.com" -Username "username" -Password (ConvertTo-SecureString "PlainTextPassword" -AsPlainText -Force) 
$containerGroup = New-AzContainerGroup -ResourceGroupName test-rg -Name test-cg -Location eastus -Container $container -ImageRegistryCredential $imageRegistryCredential

Location Name    Zone ResourceGroupName
-------- ----    ---- -----------------
eastus   test-cg      test-rg

Cette commande crée un groupe de conteneurs avec une instance de conteneur, dont l’image est une image personnalisée à partir d’un registre d’images conteneur personnalisée.

Exemple 6 : Créer un groupe de conteneurs qui monte un volume de fichiers Azure

$volume = New-AzContainerGroupVolumeObject -Name "myvolume" -AzureFileShareName "myshare" -AzureFileStorageAccountName "username" -AzureFileStorageAccountKey (ConvertTo-SecureString "PlainTextPassword" -AsPlainText -Force)
$mount = New-AzContainerInstanceVolumeMountObject -MountPath "/aci/logs" -Name "myvolume"
$container = New-AzContainerInstanceObject -Name test-container -Image alpine -VolumeMount $mount
$containerGroup = New-AzContainerGroup -ResourceGroupName test-rg -Name test-cg -Location eastus -Container $container -Volume $volume

Location Name    Zone ResourceGroupName
-------- ----    ---- -----------------
eastus   test-cg      test-rg

Cette commande crée un groupe de conteneurs avec une instance de conteneur, dont l’image est une image personnalisée à partir d’un registre d’images conteneur personnalisée.

Exemple 7 : Créer un groupe de conteneurs avec l’identité affectée par le système et l’identité affectée par l’utilisateur

$container = New-AzContainerInstanceObject -Name test-container -Image alpine
$containerGroup = New-AzContainerGroup -ResourceGroupName test-rg -Name test-cg -Location eastus -Container $container -IdentityType "SystemAssigned, UserAssigned" -IdentityUserAssignedIdentity @{"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}" = @{}}

Location Name    Zone ResourceGroupName
-------- ----    ---- -----------------
eastus   test-cg      test-rg

Cette commande crée un groupe de conteneurs avec l’identité affectée par le système et l’identité affectée par l’utilisateur.

Paramètres

-AsJob

Exécuter la commande en tant que travail

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Confirm

Vous demande une confirmation avant d’exécuter l’applet de commande.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Container

Conteneurs présents dans le groupe de conteneurs. Pour construire, consultez la section NOTES pour les propriétés CONTAINER et créer une table de hachage.

Type:IContainer[]
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-DefaultProfile

Informations d’identification, compte, locataire et abonnement utilisés pour la communication avec Azure.

Type:PSObject
Aliases:AzureRMContext, AzureCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DnsConfigNameServer

Serveurs DNS du groupe de conteneurs.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DnsConfigOption

Options DNS du groupe de conteneurs.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DnsConfigSearchDomain

Domaines de recherche DNS pour la recherche de nom d’hôte dans le groupe de conteneurs.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-EncryptionPropertyKeyName

Nom de la clé de chiffrement.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-EncryptionPropertyKeyVersion

Version de la clé de chiffrement.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-EncryptionPropertyVaultBaseUrl

URL de base du coffre de clés.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-IdentityType

Type d’identité utilisé pour le groupe de conteneurs. Le type « SystemAssigned, UserAssigned » comprend à la fois une identité créée implicitement et un ensemble d’identités attribuées par l’utilisateur. Le type « None » supprime les identités du groupe de conteneurs.

Type:ResourceIdentityType
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-IdentityUserAssignedIdentity

Liste d’identités utilisateur associées au groupe de conteneurs. Les références de clé de dictionnaire d’identité utilisateur seront des ID de ressource ARM sous la forme : « /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName} ».

Type:Hashtable
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ImageRegistryCredential

Informations d’identification du registre d’images à partir desquelles le groupe de conteneurs est créé. Pour construire, consultez la section NOTES pour les propriétés IMAGEREGISTRYCREDENTIAL et créez une table de hachage.

Type:IImageRegistryCredential[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-InitContainer

Conteneurs d'initialisation d'un groupe de conteneurs. Pour construire, consultez la section NOTES pour les propriétés INITCONTAINER et créez une table de hachage.

Type:IInitContainerDefinition[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-IPAddressDnsNameLabel

Étiquette du nom DNS de l’adresse IP.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-IPAddressIP

Adresse IP exposée à l’Internet public.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-IPAddressPort

Liste des ports exposés dans le groupe de conteneurs. Pour construire, consultez la section NOTES pour les propriétés IPADDRESSPORT et créer une table de hachage.

Type:IPort[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-IPAddressType

Indique si l’adresse IP est exposée à l’Internet public ou à un réseau virtuel privé.

Type:ContainerGroupIPAddressType
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Location

Emplacement de la ressource.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-LogAnalyticLogType

Type de journal à utiliser.

Type:LogAnalyticsLogType
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-LogAnalyticMetadata

Métadonnées pour l’analytique des journaux.

Type:Hashtable
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-LogAnalyticWorkspaceId

ID d’espace de travail pour l’analytique des journaux.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-LogAnalyticWorkspaceKey

Clé d’espace de travail pour l’analytique des journaux.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-LogAnalyticWorkspaceResourceId

ID de ressource de l’espace de travail pour Log Analytics

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Name

Nom du groupe de conteneurs.

Type:String
Aliases:ContainerGroupName
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-NoWait

Exécuter la commande de manière asynchrone

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-OSType

Type de système d’exploitation exigé par les conteneurs présents dans le groupe de conteneurs.

Type:OperatingSystemTypes
Position:Named
Default value:"Linux"
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Priority

Priorité du groupe de conteneurs.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ResourceGroupName

Nom du groupe de ressources.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-RestartPolicy

Stratégie de redémarrage pour tous les conteneurs présents dans le groupe de conteneurs.

  • Always Toujours redémarrer - OnFailure Redémarrer en cas d’échec - Never Ne jamais redémarrer
Type:ContainerGroupRestartPolicy
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Sku

Référence SKU d’un groupe de conteneurs.

Type:ContainerGroupSku
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SubnetId

ID de ressource de sous-réseau pour un groupe de conteneurs. Pour construire, consultez la section NOTES pour les propriétés SUBNETID et créer une table de hachage.

Type:IContainerGroupSubnetId[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SubscriptionId

Informations d’identification d’abonnement qui identifient de manière unique l’abonnement Microsoft Azure. L’ID d’abonnement fait partie de l’URI pour chaque appel de service.

Type:String
Position:Named
Default value:(Get-AzContext).Subscription.Id
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Tag

Étiquettes de la ressource.

Type:Hashtable
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Volume

Liste des volumes qui peuvent être montés par les conteneurs présents dans ce groupe de conteneurs. Pour construire, consultez la section NOTES pour les propriétés VOLUME et créez une table de hachage.

Type:IVolume[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

Montre ce qui se passe en cas d’exécution de l’applet de commande. L’applet de commande n’est pas exécutée.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Zone

Zones du groupe de conteneurs.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Sorties

IContainerGroup

Notes

ALIAS

PROPRIÉTÉS DE PARAMÈTRES COMPLEXES

Pour créer les paramètres décrits ci-dessous, construisez une table de hachage contenant les propriétés appropriées. Pour plus d’informations sur les tables de hachage, exécutez Get-Help about_Hash_Tables.

CONTAINER <IContainer[]>: conteneurs au sein du groupe de conteneurs.

  • Image <String>: nom de l’image utilisée pour créer l’instance de conteneur.
  • Name <String>: nom fourni par l’utilisateur de l’instance de conteneur.
  • RequestCpu <Double>: demande d’UC de cette instance de conteneur.
  • RequestMemoryInGb <Double>: demande de mémoire en Go de cette instance de conteneur.
  • [Command <String[]>]: commandes à exécuter dans l’instance de conteneur sous forme exec.
  • [EnvironmentVariable <IEnvironmentVariable[]>]: variables d’environnement à définir dans l’instance de conteneur.
    • Name <String> : Nom de la variable d’environnement.
    • [SecureValue <String>]: valeur de la variable d’environnement sécurisée.
    • [Value <String>] : Valeur de la variable d’environnement.
  • [LimitCpu <Double?>]: limite du processeur de cette instance de conteneur.
  • [LimitMemoryInGb <Double?>]: limite de mémoire en Go de cette instance de conteneur.
  • [LimitsGpuCount <Int32?>]: nombre de ressources GPU.
  • [LimitsGpuSku <GpuSku?>]: référence SKU de la ressource GPU.
  • [LivenessProbeExecCommand <String[]>]: commandes à exécuter dans le conteneur.
  • [LivenessProbeFailureThreshold <Int32?>]: seuil d’échec.
  • [LivenessProbeHttpGetHttpHeader <IHttpHeader[]>]: en-têtes HTTP.
    • [Name <String>]: nom de l’en-tête.
    • [Value <String>]: valeur d’en-tête.
  • [LivenessProbeHttpGetPath <String>]: chemin d’accès à la sonde.
  • [LivenessProbeHttpGetPort <Int32?>]: numéro de port à sonder.
  • [LivenessProbeHttpGetScheme <Scheme?>]: Le schéma.
  • [LivenessProbeInitialDelaySecond <Int32?>]: délai initial secondes.
  • [LivenessProbePeriodSecond <Int32?>]: période secondes.
  • [LivenessProbeSuccessThreshold <Int32?>]: seuil de réussite.
  • [LivenessProbeTimeoutSecond <Int32?>]: délai d’expiration des secondes.
  • [Port <IContainerPort[]>]: ports exposés sur l’instance de conteneur.
    • Port <Int32>: numéro de port exposé dans le groupe de conteneurs.
    • [Protocol <ContainerNetworkProtocol?>]: protocole associé au port.
  • [ReadinessProbeExecCommand <String[]>]: commandes à exécuter dans le conteneur.
  • [ReadinessProbeFailureThreshold <Int32?>]: seuil d’échec.
  • [ReadinessProbeHttpGetHttpHeader <IHttpHeader[]>]: en-têtes HTTP.
  • [ReadinessProbeHttpGetPath <String>]: chemin d’accès à la sonde.
  • [ReadinessProbeHttpGetPort <Int32?>]: numéro de port à sonder.
  • [ReadinessProbeHttpGetScheme <Scheme?>]: Le schéma.
  • [ReadinessProbeInitialDelaySecond <Int32?>]: délai initial secondes.
  • [ReadinessProbePeriodSecond <Int32?>]: période secondes.
  • [ReadinessProbeSuccessThreshold <Int32?>]: seuil de réussite.
  • [ReadinessProbeTimeoutSecond <Int32?>]: délai d’expiration des secondes.
  • [RequestsGpuCount <Int32?>]: nombre de ressources GPU.
  • [RequestsGpuSku <GpuSku?>]: référence SKU de la ressource GPU.
  • [VolumeMount <IVolumeMount[]>]: montages de volume disponibles pour l’instance de conteneur.
    • MountPath <String>: chemin d’accès au sein du conteneur dans lequel le volume doit être monté. Ne doit pas contenir de signe deux-points (:).
    • Name <String>: nom du montage de volume.
    • [ReadOnly <Boolean?>]: indicateur indiquant si le montage du volume est en lecture seule.

IMAGEREGISTRYCREDENTIAL <IImageRegistryCredential[]>: informations d’identification du Registre d’images à partir desquelles le groupe de conteneurs est créé.

  • Server <String>: serveur de Registre d’images Docker sans protocole tel que « http » et « https ».
  • [Identity <String>]: identité du registre privé.
  • [IdentityUrl <String>]: URL d’identité du registre privé.
  • [Password <String>]: mot de passe du registre privé.
  • [Username <String>]: nom d’utilisateur du registre privé.

INITCONTAINER <IInitContainerDefinition[]>: conteneurs init pour un groupe de conteneurs.

  • Name <String>: nom du conteneur init.
  • [Command <String[]>]: commande à exécuter dans le conteneur init sous forme exec.
  • [EnvironmentVariable <IEnvironmentVariable[]>]: variables d’environnement à définir dans le conteneur init.
    • Name <String> : Nom de la variable d’environnement.
    • [SecureValue <String>]: valeur de la variable d’environnement sécurisée.
    • [Value <String>] : Valeur de la variable d’environnement.
  • [Image <String>]: image du conteneur init.
  • [VolumeMount <IVolumeMount[]>]: montages de volume disponibles pour le conteneur init.
    • MountPath <String>: chemin d’accès au sein du conteneur dans lequel le volume doit être monté. Ne doit pas contenir de signe deux-points (:).
    • Name <String>: nom du montage de volume.
    • [ReadOnly <Boolean?>]: indicateur indiquant si le montage du volume est en lecture seule.

IPADDRESSPORT <IPort[]>: liste des ports exposés sur le groupe de conteneurs.

  • Port1 <Int32>: numéro de port.
  • [Protocol <ContainerGroupNetworkProtocol?>]: protocole associé au port.

SUBNETID <IContainerGroupSubnetId[]>: ID de ressource de sous-réseau pour un groupe de conteneurs.

  • Id <String>: ID de ressource du réseau virtuel et du sous-réseau.
  • [Name <String>]: Nom convivial du sous-réseau.

VOLUME <IVolume[]>: liste des volumes pouvant être montés par des conteneurs dans ce groupe de conteneurs.

  • Name <String>: nom du volume.
  • [AzureFileReadOnly <Boolean?>]: indicateur indiquant si le fichier Azure partagé est monté en tant que volume en lecture seule.
  • [AzureFileShareName <String>]: nom du partage de fichiers Azure à monter en tant que volume.
  • [AzureFileStorageAccountKey <String>]: clé d’accès du compte de stockage utilisée pour accéder au partage de fichiers Azure.
  • [AzureFileStorageAccountName <String>]: nom du compte de stockage qui contient le partage de fichiers Azure.
  • [EmptyDir <IVolumeEmptyDir>]: volume de répertoire vide.
    • [(Any) <Object>]: cela indique que n’importe quelle propriété peut être ajoutée à cet objet.
  • [GitRepoDirectory <String>]: nom du répertoire cible. Ne doit pas contenir ou commencer par « .. ». Si « . » est spécifié, le répertoire du volume est le dépôt git. Sinon, s’il est spécifié, le volume contient le dépôt git dans le sous-répertoire avec le nom donné.
  • [GitRepoRepository <String>]: URL du référentiel
  • [GitRepoRevision <String>]: valider le hachage pour la révision spécifiée.
  • [Secret <ISecretVolume>]: volume de secrets.
    • [(Any) <String>]: cela indique que n’importe quelle propriété peut être ajoutée à cet objet.