Microsoft. ContainerInstance containerGroups 2026-07-01

Définition de ressource Bicep

Le type de ressource containerGroups peut être déployé avec des opérations qui ciblent :

Pour obtenir la liste des propriétés modifiées dans chaque version de l’API, consultez journal des modifications.

Exemples d’utilisation

Exemples de Bicep

Exemple de base de déploiement d’une instance Azure Container Group.

param location string = 'westeurope'
param resourceName string = 'acctest0001'

resource containerGroup 'Microsoft.ContainerInstance/containerGroups@2023-05-01' = {
  name: resourceName
  location: location
  properties: {
    containers: [
      {
        name: 'hw'
        properties: {
          command: []
          environmentVariables: []
          image: 'ubuntu:20.04'
          ports: [
            {
              port: 80
              protocol: 'TCP'
            }
          ]
          resources: {
            requests: {
              cpu: any('0.5')
              memoryInGB: any('0.5')
            }
          }
        }
      }
    ]
    initContainers: []
    ipAddress: {
      autoGeneratedDomainNameLabelScope: 'Unsecure'
      ports: [
        {
          port: 80
          protocol: 'TCP'
        }
      ]
      type: 'Public'
    }
    osType: 'Linux'
    restartPolicy: 'Always'
    volumes: []
  }
  tags: {
    environment: 'Testing'
  }
}

Modules vérifiés Azure

Les modules vérifiés Azure suivants peuvent être utilisés pour déployer ce type de ressource.

Module Description
d’instance de conteneur Module de ressources AVM pour Container Instance

Exemples de démarrage rapide Azure

Les modèles de démarrage rapide Azure suivants contiennent des exemples Bicep pour le déploiement de ce type de ressource.

Fichier Bicep Description
Azure Container Instances - BC avec SQL Server et IIS Déployez un conteneur Windows unique avec un environnement Microsoft Dynamics 365 Business Central autonome complet sur Azure Container Instances.
Azure Container Instances - conteneur avec des secrets Déployez un conteneur Linux qui a un volume secret à l’aide d’Azure Container Instances.
Azure Container Instances - Réseau virtuel Déployez une instance de conteneur dans un réseau virtuel Azure.
Créer un site WordPress Ce modèle crée un site WordPress sur Container Instance
Créer un serveur SFTP à la demande avec des de stockage persistant Ce modèle illustre un serveur SFTP à la demande à l’aide d’azure Container Instance (ACI).
créer Application Gateway avec des certificats Ce modèle montre comment générer des certificats auto-signés Key Vault, puis référencer à partir d’Application Gateway.
Front Door Standard/Premium avec Azure Container Instances Ce modèle crée une porte d’entrée Standard/Premium avec un groupe de conteneurs.
Front Door avec container Instances et application Gateway Ce modèle crée un Front Door Standard/Premium avec un groupe de conteneurs et Application Gateway.
groupe de disponibilité SQL Server sur AKS Cela crée un cluster AKS, puis déploie des groupes de disponibilité SQL Server dans celui-ci à l’aide d’un package CNAB déployé à l’aide de Duffle et ACI

Format de ressource

Pour créer une ressource Microsoft.ContainerInstance/containerGroups, ajoutez le bicep suivant à votre modèle.

resource symbolicname 'Microsoft.ContainerInstance/containerGroups@2026-07-01' = {
  identity: {
    type: 'string'
    userAssignedIdentities: {
      {customized property}: {}
    }
  }
  location: 'string'
  name: 'string'
  properties: {
    confidentialComputeProperties: {
      ccePolicy: 'string'
    }
    containerGroupProfile: {
      id: 'string'
      revision: int
    }
    containers: [
      {
        name: 'string'
        properties: {
          command: [
            'string'
          ]
          configMap: {
            keyValuePairs: {
              {customized property}: 'string'
            }
          }
          environmentVariables: [
            {
              name: 'string'
              secureValue: 'string'
              secureValueReference: 'string'
              value: 'string'
            }
          ]
          image: 'string'
          livenessProbe: {
            exec: {
              command: [
                'string'
              ]
            }
            failureThreshold: int
            httpGet: {
              httpHeaders: [
                {
                  name: 'string'
                  value: 'string'
                }
              ]
              path: 'string'
              port: int
              scheme: 'string'
            }
            initialDelaySeconds: int
            periodSeconds: int
            successThreshold: int
            timeoutSeconds: int
          }
          ports: [
            {
              port: int
              protocol: 'string'
            }
          ]
          readinessProbe: {
            exec: {
              command: [
                'string'
              ]
            }
            failureThreshold: int
            httpGet: {
              httpHeaders: [
                {
                  name: 'string'
                  value: 'string'
                }
              ]
              path: 'string'
              port: int
              scheme: 'string'
            }
            initialDelaySeconds: int
            periodSeconds: int
            successThreshold: int
            timeoutSeconds: int
          }
          resources: {
            limits: {
              cpu: int
              gpu: {
                count: int
                sku: 'string'
              }
              memoryInGB: int
            }
            requests: {
              cpu: int
              gpu: {
                count: int
                sku: 'string'
              }
              memoryInGB: int
            }
          }
          securityContext: {
            allowPrivilegeEscalation: bool
            capabilities: {
              add: [
                'string'
              ]
              drop: [
                'string'
              ]
            }
            privileged: bool
            runAsGroup: int
            runAsUser: int
            seccompProfile: 'string'
          }
          volumeMounts: [
            {
              mountPath: 'string'
              name: 'string'
              readOnly: bool
            }
          ]
        }
      }
    ]
    diagnostics: {
      logAnalytics: {
        logType: 'string'
        metadata: {
          {customized property}: 'string'
        }
        workspaceId: 'string'
        workspaceKey: 'string'
        workspaceResourceId: 'string'
      }
    }
    dnsConfig: {
      nameServers: [
        'string'
      ]
      options: 'string'
      searchDomains: 'string'
    }
    encryptionProperties: {
      identity: 'string'
      keyName: 'string'
      keyVersion: 'string'
      vaultBaseUrl: 'string'
    }
    extensions: [
      {
        name: 'string'
        properties: {
          extensionType: 'string'
          protectedSettings: any(...)
          settings: any(...)
          version: 'string'
        }
      }
    ]
    identityAcls: {
      acls: [
        {
          access: 'string'
          identity: 'string'
        }
      ]
      defaultAccess: 'string'
    }
    imageRegistryCredentials: [
      {
        identity: 'string'
        identityUrl: 'string'
        password: 'string'
        passwordReference: 'string'
        server: 'string'
        username: 'string'
      }
    ]
    initContainers: [
      {
        name: 'string'
        properties: {
          command: [
            'string'
          ]
          environmentVariables: [
            {
              name: 'string'
              secureValue: 'string'
              secureValueReference: 'string'
              value: 'string'
            }
          ]
          image: 'string'
          securityContext: {
            allowPrivilegeEscalation: bool
            capabilities: {
              add: [
                'string'
              ]
              drop: [
                'string'
              ]
            }
            privileged: bool
            runAsGroup: int
            runAsUser: int
            seccompProfile: 'string'
          }
          volumeMounts: [
            {
              mountPath: 'string'
              name: 'string'
              readOnly: bool
            }
          ]
        }
      }
    ]
    ipAddress: {
      autoGeneratedDomainNameLabelScope: 'string'
      dnsNameLabel: 'string'
      ip: 'string'
      ports: [
        {
          port: int
          protocol: 'string'
        }
      ]
      type: 'string'
    }
    osType: 'string'
    priority: 'string'
    restartPolicy: 'string'
    secretReferences: [
      {
        identity: 'string'
        name: 'string'
        secretReferenceUri: 'string'
      }
    ]
    sku: 'string'
    standbyPoolProfile: {
      failContainerGroupCreateOnReuseFailure: bool
      id: 'string'
    }
    subnetIds: [
      {
        id: 'string'
        name: 'string'
      }
    ]
    volumes: [
      {
        azureFile: {
          readOnly: bool
          shareName: 'string'
          storageAccountKey: 'string'
          storageAccountKeyReference: 'string'
          storageAccountName: 'string'
          userAssignedIdentityClientId: 'string'
        }
        emptyDir: any(...)
        gitRepo: {
          directory: 'string'
          repository: 'string'
          revision: 'string'
        }
        name: 'string'
        secret: {
          {customized property}: 'string'
        }
        secretReference: {
          {customized property}: 'string'
        }
      }
    ]
  }
  tags: {
    {customized property}: 'string'
  }
  zones: [
    'string'
  ]
}

Valeurs de propriété

Microsoft.ContainerInstance/containerGroups

Nom Description Value
identity Identité du groupe de conteneurs, si elle est configurée. ContainerGroupIdentity
location L’emplacement des ressources du groupe conteneur. string
nom Nom de la ressource chaîne (obligatoire)
Propriétés Propriétés du groupe de conteneurs ContainerGroupProperties (obligatoire)
tags Étiquettes de ressources Dictionnaire de noms et de valeurs d’étiquettes. Consultez les balises dans les modèles
zones Zones de disponibilité. chaîne de caractères[]

AzureFileVolume

Nom Description Value
readOnly Indicateur indiquant si le fichier Azure partagé est monté en tant que volume en lecture seule. bool
shareName Nom du partage de fichiers Azure à monter en tant que volume. chaîne (obligatoire)
storageAccountKey Clé d’accès au compte de stockage utilisée pour accéder au partage de fichiers Azure. corde

Contraintes:
Valeur sensible. Passez en tant que paramètre sécurisé.
storageAccountKeyReference Référence à la clé d’accès du compte de stockage utilisée pour accéder au partage de fichiers Azure. string
storageAccountName Nom du compte de stockage qui contient le partage de fichiers Azure. chaîne (obligatoire)
userAssignedIdentityClientId L’identifiant client de l’identité managée attribuée par l’utilisateur qui a accès au partage de fichiers Azure. string

ConfidentialComputeProperties

Nom Description Value
ccePolicy Stratégie d’application de calcul confidentielle encodée en base64 string

ConfigMap

Nom Description Value
keyValuePairs Le dictionnaire des paires clé-valeur dans le mappage de configuration. ConfigMapKeyValuePairs

ConfigMapKeyValuePairs

Nom Description Value

Conteneur

Nom Description Value
nom Nom fourni par l’utilisateur de l’instance de conteneur. chaîne (obligatoire)
Propriétés Propriétés de l’instance de conteneur. ContainerProperties (obligatoire)

ContainerExec

Nom Description Value
commande Commandes à exécuter dans le conteneur. chaîne de caractères[]

ContainerGroupDiagnostics

Nom Description Value
logAnalytics Informations log Analytics du groupe de conteneurs. LogAnalytics

ContainerGroupIdentity

Nom Description Value
type Type d’identité utilisé pour le groupe de conteneurs. Le type « SystemAssigned, UserAssigned » inclut à la fois une identité créée implicitement et un ensemble d’identités affectées par l’utilisateur. Le type « None » supprime toutes les identités du groupe de conteneurs. « Aucun »
'SystemAssigned'
« SystemAssigned, UserAssigned »
'UserAssigned'
userAssignedIdentities Liste des identités utilisateur associées au groupe de conteneurs. ContainerGroupIdentityUserAssignedIdentities

ContainerGroupIdentityUserAssignedIdentities

Nom Description Value

ContainerGroupProfileReferenceDefinition

Nom Description Value
id ID de référence du profil de groupe de conteneurs.Il s’agit d’un ID de ressource ARM sous la forme : « /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroupProfiles/{containerGroupProfileName} ». string
révision Révision de référence du profil de groupe de conteneurs. int

ContainerGroupProperties

Nom Description Value
confidentialComputeProperties Propriétés du groupe de conteneurs confidentiel ConfidentialComputeProperties
containerGroupProfile Propriétés du profil de groupe de conteneurs de référence. ContainerGroupProfileReferenceDefinition
containers Conteneurs au sein du groupe de conteneurs. container[] (obligatoire)
diagnostics Informations de diagnostic pour un groupe de conteneurs. ContainerGroupDiagnostics
dnsConfig Informations de configuration DNS pour un groupe de conteneurs. DnsConfiguration
cryptagePropriétés Propriétés de chiffrement d’un groupe de conteneurs. EncryptionProperties
Extensions extensions utilisées par kubelet virtuel DeploymentExtensionSpec[]
identityAcls Niveaux de contrôle d’accès des identités. IdentityAcls
imageRegistryCredentials Informations d’identification du Registre d’images à partir desquelles le groupe de conteneurs est créé. ImageRegistryCredential[]
initContainers Conteneurs init pour un groupe de conteneurs. InitContainerDefinition[]
ipAddress Type d’adresse IP du groupe de conteneurs. IpAddress
osType Type de système d’exploitation requis par les conteneurs dans le groupe de conteneurs. 'Linux'
« Windows »
priority Priorité du groupe de conteneurs. 'Normal'
'Spot'
restartPolicy Redémarrez la stratégie pour tous les conteneurs au sein du groupe de conteneurs.
- Always toujours redémarrer
- OnFailure Redémarrer en cas d’échec
- Never Jamais redémarrer
'Always'
'Never'
'OnFailure'
secretRéférences Références secrètes qui seront référencées dans le groupe de conteneurs. Référence Secrète[]
sku Référence SKU d’un groupe de conteneurs. 'Confidentiel'
« Dévoué »
'Non spécifié'
« Standard »
standbyPoolProfile Propriétés du profil du pool de secours de référence. standbyPoolProfileDefinition
subnetIds ID de ressource de sous-réseau pour un groupe de conteneurs. ContainerGroupSubnetId[]
volumes Liste des volumes pouvant être montés par des conteneurs dans ce groupe de conteneurs. de volume []

ContainerGroupSubnetId

Nom Description Value
id ID de ressource du réseau virtuel et du sous-réseau. chaîne (obligatoire)
nom Nom convivial du sous-réseau. string

ContainerGroupTags

Nom Description Value

ContainerHttpGet

Nom Description Value
httpHeaders (en-tête http) En-têtes HTTP. HttpHeader []
chemin Chemin d’accès à la sonde. string
port Numéro de port à sonder. int (obligatoire)
scheme Le schéma. 'http'
'https'

ContainerPort (en anglais)

Nom Description Value
port Numéro de port exposé dans le groupe de conteneurs. int (obligatoire)
protocol Protocole associé au port. 'TCP'
'UDP'

Sonde de conteneur

Nom Description Value
exec Commande d’exécution à sonder containerExec
failureThreshold Seuil d’échec. int
httpGet Paramètres Http Get à sonder containerHttpGet
initialDelaySeconds Délai initial secondes. int
periodSeconds Secondes de période. int
successThreshold Seuil de réussite. int
timeoutSeconds Délai d’expiration des secondes. int

Propriétés du conteneur

Nom Description Value
commande Commandes à exécuter dans l’instance de conteneur sous forme exec. chaîne de caractères[]
configMap Carte de configuration. ConfigMap
environmentVariables Variables d’environnement à définir dans l’instance de conteneur. EnvironmentVariable[]
image Nom de l’image utilisée pour créer l’instance de conteneur. string
livenessProbe La sonde liveness. ContainerProbe
ports Ports exposés sur l’instance de conteneur. ConteneurPort[]
readinessProbe Sonde de préparation. ContainerProbe
resources Configuration requise pour les ressources de l’instance de conteneur. ResourceRequirements
securityContext Propriétés de sécurité du conteneur. SecurityContextDefinition
volumeMontures Montages de volume disponibles pour l’instance de conteneur. VolumeMount[]

DeploymentExtensionSpec

Nom Description Value
nom Nom de l’extension. chaîne (obligatoire)
Propriétés Propriétés spécifiques à l’extension DeploymentExtensionSpecProperties

DeploymentExtensionSpecProperties

Nom Description Value
extensionType Type d’extension à ajouter. chaîne (obligatoire)
protectedSettings Paramètres protégés pour l’extension. N’importe lequel
settings Paramètres de l’extension. N’importe lequel
version Version de l’extension utilisée. chaîne (obligatoire)

DnsConfiguration

Nom Description Value
nameServers Serveurs DNS pour le groupe de conteneurs. string[] (obligatoire)
options Options DNS pour le groupe de conteneurs. string
searchDomains Domaines de recherche DNS pour la recherche de nom d’hôte dans le groupe de conteneurs. string

Propriétés de chiffrement

Nom Description Value
identity Identité managée keyvault. string
keyName Nom de la clé de chiffrement. chaîne (obligatoire)
keyVersion Version de la clé de chiffrement. chaîne (obligatoire)
vaultBaseUrl URL de base du coffre de clés. chaîne (obligatoire)

EnvironmentVariable

Nom Description Value
nom Nom de la variable d’environnement. chaîne (obligatoire)
secureValue Valeur de la variable d’environnement sécurisée. corde

Contraintes:
Valeur sensible. Passez en tant que paramètre sécurisé.
secureValueReference Référence de la variable d’environnement sécurisée. string
value Valeur de la variable d’environnement. string

GitRepoVolume

Nom Description Value
directory Nom du répertoire cible. Ne doit pas contenir ou commencer par '..'. Si « . » est fourni, le répertoire du volume est le dépôt git. Sinon, s’il est spécifié, le volume contiendra le dépôt git dans le sous-répertoire avec le nom donné. string
répertoire URL du dépôt chaîne (obligatoire)
révision Valider le hachage pour la révision spécifiée. string

Ressource Gpu

Nom Description Value
count Nombre de ressources GPU. int (obligatoire)
sku Référence SKU de la ressource GPU. 'K80'
'P100'
'V100' (obligatoire)

HttpHeader

Nom Description Value
nom Nom de l’en-tête. string
value Valeur d’en-tête. string

IdentityAccessControl

Nom Description Value
accès Niveau d’accès de l’identité. 'All'
« Système »
'Utilisateur'
identity Identité. string

IdentityAcls

Nom Description Value
Acl Niveaux de contrôle d’accès pour chaque identité. IdentityAccessControl[]
defaultAccess Niveau d’accès par défaut. 'All'
« Système »
'Utilisateur'

ImageRegistryCredential

Nom Description Value
identity Identité du registre privé. string
identityUrl URL d’identité du registre privé. string
password Mot de passe du registre privé. corde

Contraintes:
Valeur sensible. Passez en tant que paramètre sécurisé.
passwordReference Référence pour le mot de passe du registre privé. string
server Le serveur de Registre d’images Docker sans protocole tel que « http » et « https ». chaîne (obligatoire)
username Nom d’utilisateur du registre privé. string

InitContainerDefinition

Nom Description Value
nom Nom du conteneur init. chaîne (obligatoire)
Propriétés Propriétés du conteneur init. InitContainerPropertiesDefinition (obligatoire)

InitContainerPropertiesDefinition

Nom Description Value
commande Commande à exécuter dans le conteneur init sous forme exec. chaîne de caractères[]
environmentVariables Variables d’environnement à définir dans le conteneur init. EnvironmentVariable[]
image Image du conteneur init. string
securityContext Propriétés de sécurité du conteneur. SecurityContextDefinition
volumeMontures Montages de volume disponibles pour le conteneur init. VolumeMount[]

adresse IP

Nom Description Value
autoGeneratedDomainNameLabelScope Valeur représentant l’énumération de sécurité. La valeur « Non sécurisé » est la valeur par défaut si elle n’est pas sélectionnée et signifie que l’étiquette de nom de domaine de l’objet n’est pas sécurisée par rapport à la prise de contrôle de sous-domaine. La valeur « TenantReuse » est la valeur par défaut si elle est sélectionnée et signifie que l’étiquette de nom de domaine de l’objet peut être réutilisée dans le même locataire. La valeur « SubscriptionReuse » signifie que l’étiquette de nom de domaine de l’objet peut être réutilisée dans le même abonnement. La valeur « ResourceGroupReuse » signifie que l’étiquette de nom de domaine de l’objet peut être réutilisée dans le même groupe de ressources. La valeur « NoReuse » signifie que l’étiquette de nom de domaine de l’objet ne peut pas être réutilisée dans le même groupe de ressources, abonnement ou locataire. 'Noreuse'
'ResourceGroupReuse'
'Réutilisation de l’abonnement'
'Réutilisation des locataires'
'Non sécurisé'
dnsNameLabel Étiquette de nom DNS pour l’adresse IP. string
Ip Adresse IP exposée à l’Internet public. string
ports Liste des ports exposés sur le groupe de conteneurs. port[] (obligatoire)
type Spécifie si l’adresse IP est exposée à l’Internet public ou au réseau virtuel privé. 'Private'
'Public' (obligatoire)

LogAnalytics

Nom Description Value
logType Type de journal à utiliser. « ContainerInsights »
'ContainerInstanceLogs'
metadata Métadonnées pour Log Analytics. LogAnalyticsMetadata
workspaceId ID d’espace de travail pour Log Analytics chaîne (obligatoire)
workspaceKey Clé d’espace de travail pour Log Analytics corde

Contraintes:
Valeur sensible. Passez en tant que paramètre sécurisé. (required)
workspaceResourceId ID de ressource de l’espace de travail pour Log Analytics corde

Contraintes:
Valeur sensible. Passez en tant que paramètre sécurisé.

LogAnalyticsMetadata

Nom Description Value

Port

Nom Description Value
port Numéro de port. int (obligatoire)
protocol Protocole associé au port. 'TCP'
'UDP'

ResourceLimits

Nom Description Value
cpu Limite du processeur de cette instance de conteneur. int
gpu Limite GPU de cette instance de conteneur. GpuResource
memoryInGB Limite de mémoire en Go de cette instance de conteneur. int

ResourceRequests

Nom Description Value
cpu Demande d’UC de cette instance de conteneur. int (obligatoire)
gpu Requête GPU de cette instance de conteneur. GpuResource
memoryInGB Demande de mémoire en Go de cette instance de conteneur. int (obligatoire)

ResourceRequirements

Nom Description Value
limits Limites de ressources de cette instance de conteneur. ResourceLimits
requests Demandes de ressources de cette instance de conteneur. ResourceRequests (obligatoire)

Référence secrète

Nom Description Value
identity ID de ressource ARM de l’identité managée qui a accès au secret dans le coffre de clés chaîne (obligatoire)
nom Identificateur de la référence de secret chaîne (obligatoire)
secretReferenceUri URI du secret dans le coffre de clés chaîne (obligatoire)

SecurityContextCapabilitiesDefinition

Nom Description Value
add Fonctionnalités à ajouter au conteneur. chaîne de caractères[]
baisse Fonctionnalités à supprimer du conteneur. chaîne de caractères[]

SecurityContextDefinition

Nom Description Value
allowPrivilegeEscalation Valeur booléenne indiquant si le processus init peut élever ses privilèges bool
capabilities Fonctionnalités à ajouter ou supprimer à partir d’un conteneur. SecurityContextCapabilitiesDefinition
privilégié Indicateur permettant de déterminer si les autorisations de conteneur sont élevées à Privileged. bool
runAsGroup Définit le GID utilisateur du conteneur. int
runAsUser Définit l’UID utilisateur du conteneur. int
seccompProfile chaîne encodée en base64 contenant le contenu du json dans le profil seccomp string

StandbyPoolProfileDefinition

Nom Description Value
failContainerGroupCreateOnReuseFailure Indicateur pour déterminer si ACI doit échouer la demande de création si le groupe de conteneurs ne peut pas être obtenu à partir du pool de secours. bool
id ID de référence du profil de pool de secours. Il s’agit d’un ID de ressource ARM sous la forme : « /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StandbyPool/standbyContainerGroupPools/{standbyPoolName} ». string

UserAssignedIdentities

Nom Description Value

Volume

Nom Description Value
azureFile Volume De fichiers Azure. AzureFileVolume
emptyDir Volume de répertoire vide. N’importe lequel
gitRepo Volume du dépôt Git. GitRepoVolume
nom Nom du volume. chaîne (obligatoire)
secret Volume de secrets. VolumeSecret
secretReference Volume de référence de secret. VolumeSecretRéférence

Montage en volume

Nom Description Value
mountPath Chemin d’accès au sein du conteneur où le volume doit être monté. Ne doit pas contenir de deux-points (:). chaîne (obligatoire)
nom Nom du montage du volume. chaîne (obligatoire)
readOnly Indicateur indiquant si le montage de volume est en lecture seule. bool

VolumeSecret

Nom Description Value

VolumeSecretRéférence

Nom Description Value

Définition de ressource de modèle ARM

Le type de ressource containerGroups peut être déployé avec des opérations qui ciblent :

Exemples d’utilisation

modèles de démarrage rapide Azure

Les modèles de démarrage rapide Azure suivants déployer ce type de ressource.

Template Description
Azure Container Instances - BC avec SQL Server et IIS

Déployer sur Azure
Déployez un conteneur Windows unique avec un environnement Microsoft Dynamics 365 Business Central autonome complet sur Azure Container Instances.
Azure Container Instances - conteneur avec sonde d’intégrité

Déployer sur Azure
Déployez un conteneur Linux doté d’une sonde d’intégrité à l’aide d’Azure Container Instances.
Azure Container Instances - conteneur avec des secrets

Déployer sur Azure
Déployez un conteneur Linux qui a un volume secret à l’aide d’Azure Container Instances.
Azure Container Instances - conteneur avec envVar sécurisé

Déployer sur Azure
Déployez un conteneur Linux qui a une variable d’environnement sécurisée à l’aide d’Azure Container Instances.
Azure Container Instances - Conteneur Linux avec emptyDir

Déployer sur Azure
Déployez deux conteneurs Linux qui partagent un volume emptyDir à l’aide d’Azure Container Instances.
Azure Container Instances - Conteneur Linux avec gitRepo

Déployer sur Azure
Déployez un conteneur Linux qui utilise un volume gitRepo à l’aide d’Azure Container Instances.
Azure Container Instances - Réseau virtuel

Déployer sur Azure
Déployez une instance de conteneur dans un réseau virtuel Azure.
créer un partage de fichiers de compte de stockage via des conteneurs

Déployer sur Azure
Ce modèle crée un compte de stockage et un partage de fichiers via Azure-cli dans une instance de conteneur
Créer un site WordPress

Déployer sur Azure
Ce modèle crée un site WordPress sur Container Instance
Créer un site WordPress dans un réseau virtuel

Déployer sur Azure
Ce modèle crée un site WordPress sur Container Instance dans un réseau virtuel. Et génère un nom de domaine complet de site public qui peut accéder au site WordPress.
Créer un serveur SFTP à la demande avec des de stockage persistant

Déployer sur Azure
Ce modèle illustre un serveur SFTP à la demande à l’aide d’azure Container Instance (ACI).
créer Application Gateway avec des certificats

Déployer sur Azure
Ce modèle montre comment générer des certificats auto-signés Key Vault, puis référencer à partir d’Application Gateway.
Front Door Standard/Premium avec Azure Container Instances

Déployer sur Azure
Ce modèle crée une porte d’entrée Standard/Premium avec un groupe de conteneurs.
Front Door avec container Instances et application Gateway

Déployer sur Azure
Ce modèle crée un Front Door Standard/Premium avec un groupe de conteneurs et Application Gateway.
serveur SFTP à la demande à l’aide d’un compte de stockage existant

Déployer sur Azure
Ce modèle illustre un serveur SFTP à la demande à l’aide d’azure Container Instance (ACI).
groupe de disponibilité SQL Server sur AKS

Déployer sur Azure
Cela crée un cluster AKS, puis déploie des groupes de disponibilité SQL Server dans celui-ci à l’aide d’un package CNAB déployé à l’aide de Duffle et ACI
conteneur UDP dans ACI

Déployer sur Azure
Ce modèle crée une ressource ACI et expose un conteneur via UDP

Format de ressource

Pour créer une ressource Microsoft.ContainerInstance/containerGroups, ajoutez le code JSON suivant à votre modèle.

{
  "type": "Microsoft.ContainerInstance/containerGroups",
  "apiVersion": "2026-07-01",
  "name": "string",
  "identity": {
    "type": "string",
    "userAssignedIdentities": {
      "{customized property}": {
      }
    }
  },
  "location": "string",
  "properties": {
    "confidentialComputeProperties": {
      "ccePolicy": "string"
    },
    "containerGroupProfile": {
      "id": "string",
      "revision": "int"
    },
    "containers": [
      {
        "name": "string",
        "properties": {
          "command": [ "string" ],
          "configMap": {
            "keyValuePairs": {
              "{customized property}": "string"
            }
          },
          "environmentVariables": [
            {
              "name": "string",
              "secureValue": "string",
              "secureValueReference": "string",
              "value": "string"
            }
          ],
          "image": "string",
          "livenessProbe": {
            "exec": {
              "command": [ "string" ]
            },
            "failureThreshold": "int",
            "httpGet": {
              "httpHeaders": [
                {
                  "name": "string",
                  "value": "string"
                }
              ],
              "path": "string",
              "port": "int",
              "scheme": "string"
            },
            "initialDelaySeconds": "int",
            "periodSeconds": "int",
            "successThreshold": "int",
            "timeoutSeconds": "int"
          },
          "ports": [
            {
              "port": "int",
              "protocol": "string"
            }
          ],
          "readinessProbe": {
            "exec": {
              "command": [ "string" ]
            },
            "failureThreshold": "int",
            "httpGet": {
              "httpHeaders": [
                {
                  "name": "string",
                  "value": "string"
                }
              ],
              "path": "string",
              "port": "int",
              "scheme": "string"
            },
            "initialDelaySeconds": "int",
            "periodSeconds": "int",
            "successThreshold": "int",
            "timeoutSeconds": "int"
          },
          "resources": {
            "limits": {
              "cpu": "int",
              "gpu": {
                "count": "int",
                "sku": "string"
              },
              "memoryInGB": "int"
            },
            "requests": {
              "cpu": "int",
              "gpu": {
                "count": "int",
                "sku": "string"
              },
              "memoryInGB": "int"
            }
          },
          "securityContext": {
            "allowPrivilegeEscalation": "bool",
            "capabilities": {
              "add": [ "string" ],
              "drop": [ "string" ]
            },
            "privileged": "bool",
            "runAsGroup": "int",
            "runAsUser": "int",
            "seccompProfile": "string"
          },
          "volumeMounts": [
            {
              "mountPath": "string",
              "name": "string",
              "readOnly": "bool"
            }
          ]
        }
      }
    ],
    "diagnostics": {
      "logAnalytics": {
        "logType": "string",
        "metadata": {
          "{customized property}": "string"
        },
        "workspaceId": "string",
        "workspaceKey": "string",
        "workspaceResourceId": "string"
      }
    },
    "dnsConfig": {
      "nameServers": [ "string" ],
      "options": "string",
      "searchDomains": "string"
    },
    "encryptionProperties": {
      "identity": "string",
      "keyName": "string",
      "keyVersion": "string",
      "vaultBaseUrl": "string"
    },
    "extensions": [
      {
        "name": "string",
        "properties": {
          "extensionType": "string",
          "protectedSettings": {},
          "settings": {},
          "version": "string"
        }
      }
    ],
    "identityAcls": {
      "acls": [
        {
          "access": "string",
          "identity": "string"
        }
      ],
      "defaultAccess": "string"
    },
    "imageRegistryCredentials": [
      {
        "identity": "string",
        "identityUrl": "string",
        "password": "string",
        "passwordReference": "string",
        "server": "string",
        "username": "string"
      }
    ],
    "initContainers": [
      {
        "name": "string",
        "properties": {
          "command": [ "string" ],
          "environmentVariables": [
            {
              "name": "string",
              "secureValue": "string",
              "secureValueReference": "string",
              "value": "string"
            }
          ],
          "image": "string",
          "securityContext": {
            "allowPrivilegeEscalation": "bool",
            "capabilities": {
              "add": [ "string" ],
              "drop": [ "string" ]
            },
            "privileged": "bool",
            "runAsGroup": "int",
            "runAsUser": "int",
            "seccompProfile": "string"
          },
          "volumeMounts": [
            {
              "mountPath": "string",
              "name": "string",
              "readOnly": "bool"
            }
          ]
        }
      }
    ],
    "ipAddress": {
      "autoGeneratedDomainNameLabelScope": "string",
      "dnsNameLabel": "string",
      "ip": "string",
      "ports": [
        {
          "port": "int",
          "protocol": "string"
        }
      ],
      "type": "string"
    },
    "osType": "string",
    "priority": "string",
    "restartPolicy": "string",
    "secretReferences": [
      {
        "identity": "string",
        "name": "string",
        "secretReferenceUri": "string"
      }
    ],
    "sku": "string",
    "standbyPoolProfile": {
      "failContainerGroupCreateOnReuseFailure": "bool",
      "id": "string"
    },
    "subnetIds": [
      {
        "id": "string",
        "name": "string"
      }
    ],
    "volumes": [
      {
        "azureFile": {
          "readOnly": "bool",
          "shareName": "string",
          "storageAccountKey": "string",
          "storageAccountKeyReference": "string",
          "storageAccountName": "string",
          "userAssignedIdentityClientId": "string"
        },
        "emptyDir": {},
        "gitRepo": {
          "directory": "string",
          "repository": "string",
          "revision": "string"
        },
        "name": "string",
        "secret": {
          "{customized property}": "string"
        },
        "secretReference": {
          "{customized property}": "string"
        }
      }
    ]
  },
  "tags": {
    "{customized property}": "string"
  },
  "zones": [ "string" ]
}

Valeurs de propriété

Microsoft.ContainerInstance/containerGroups

Nom Description Value
apiVersion Version de l’API '2026-07-01'
identity Identité du groupe de conteneurs, si elle est configurée. ContainerGroupIdentity
location L’emplacement des ressources du groupe conteneur. string
nom Nom de la ressource chaîne (obligatoire)
Propriétés Propriétés du groupe de conteneurs ContainerGroupProperties (obligatoire)
tags Étiquettes de ressources Dictionnaire de noms et de valeurs d’étiquettes. Consultez les balises dans les modèles
type Type de ressource 'Microsoft.ContainerInstance/containerGroups'
zones Zones de disponibilité. chaîne de caractères[]

AzureFileVolume

Nom Description Value
readOnly Indicateur indiquant si le fichier Azure partagé est monté en tant que volume en lecture seule. bool
shareName Nom du partage de fichiers Azure à monter en tant que volume. chaîne (obligatoire)
storageAccountKey Clé d’accès au compte de stockage utilisée pour accéder au partage de fichiers Azure. corde

Contraintes:
Valeur sensible. Passez en tant que paramètre sécurisé.
storageAccountKeyReference Référence à la clé d’accès du compte de stockage utilisée pour accéder au partage de fichiers Azure. string
storageAccountName Nom du compte de stockage qui contient le partage de fichiers Azure. chaîne (obligatoire)
userAssignedIdentityClientId L’identifiant client de l’identité managée attribuée par l’utilisateur qui a accès au partage de fichiers Azure. string

ConfidentialComputeProperties

Nom Description Value
ccePolicy Stratégie d’application de calcul confidentielle encodée en base64 string

ConfigMap

Nom Description Value
keyValuePairs Le dictionnaire des paires clé-valeur dans le mappage de configuration. ConfigMapKeyValuePairs

ConfigMapKeyValuePairs

Nom Description Value

Conteneur

Nom Description Value
nom Nom fourni par l’utilisateur de l’instance de conteneur. chaîne (obligatoire)
Propriétés Propriétés de l’instance de conteneur. ContainerProperties (obligatoire)

ContainerExec

Nom Description Value
commande Commandes à exécuter dans le conteneur. chaîne de caractères[]

ContainerGroupDiagnostics

Nom Description Value
logAnalytics Informations log Analytics du groupe de conteneurs. LogAnalytics

ContainerGroupIdentity

Nom Description Value
type Type d’identité utilisé pour le groupe de conteneurs. Le type « SystemAssigned, UserAssigned » inclut à la fois une identité créée implicitement et un ensemble d’identités affectées par l’utilisateur. Le type « None » supprime toutes les identités du groupe de conteneurs. « Aucun »
'SystemAssigned'
« SystemAssigned, UserAssigned »
'UserAssigned'
userAssignedIdentities Liste des identités utilisateur associées au groupe de conteneurs. ContainerGroupIdentityUserAssignedIdentities

ContainerGroupIdentityUserAssignedIdentities

Nom Description Value

ContainerGroupProfileReferenceDefinition

Nom Description Value
id ID de référence du profil de groupe de conteneurs.Il s’agit d’un ID de ressource ARM sous la forme : « /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroupProfiles/{containerGroupProfileName} ». string
révision Révision de référence du profil de groupe de conteneurs. int

ContainerGroupProperties

Nom Description Value
confidentialComputeProperties Propriétés du groupe de conteneurs confidentiel ConfidentialComputeProperties
containerGroupProfile Propriétés du profil de groupe de conteneurs de référence. ContainerGroupProfileReferenceDefinition
containers Conteneurs au sein du groupe de conteneurs. container[] (obligatoire)
diagnostics Informations de diagnostic pour un groupe de conteneurs. ContainerGroupDiagnostics
dnsConfig Informations de configuration DNS pour un groupe de conteneurs. DnsConfiguration
cryptagePropriétés Propriétés de chiffrement d’un groupe de conteneurs. EncryptionProperties
Extensions extensions utilisées par kubelet virtuel DeploymentExtensionSpec[]
identityAcls Niveaux de contrôle d’accès des identités. IdentityAcls
imageRegistryCredentials Informations d’identification du Registre d’images à partir desquelles le groupe de conteneurs est créé. ImageRegistryCredential[]
initContainers Conteneurs init pour un groupe de conteneurs. InitContainerDefinition[]
ipAddress Type d’adresse IP du groupe de conteneurs. IpAddress
osType Type de système d’exploitation requis par les conteneurs dans le groupe de conteneurs. 'Linux'
« Windows »
priority Priorité du groupe de conteneurs. 'Normal'
'Spot'
restartPolicy Redémarrez la stratégie pour tous les conteneurs au sein du groupe de conteneurs.
- Always toujours redémarrer
- OnFailure Redémarrer en cas d’échec
- Never Jamais redémarrer
'Always'
'Never'
'OnFailure'
secretRéférences Références secrètes qui seront référencées dans le groupe de conteneurs. Référence Secrète[]
sku Référence SKU d’un groupe de conteneurs. 'Confidentiel'
« Dévoué »
'Non spécifié'
« Standard »
standbyPoolProfile Propriétés du profil du pool de secours de référence. standbyPoolProfileDefinition
subnetIds ID de ressource de sous-réseau pour un groupe de conteneurs. ContainerGroupSubnetId[]
volumes Liste des volumes pouvant être montés par des conteneurs dans ce groupe de conteneurs. de volume []

ContainerGroupSubnetId

Nom Description Value
id ID de ressource du réseau virtuel et du sous-réseau. chaîne (obligatoire)
nom Nom convivial du sous-réseau. string

ContainerGroupTags

Nom Description Value

ContainerHttpGet

Nom Description Value
httpHeaders (en-tête http) En-têtes HTTP. HttpHeader []
chemin Chemin d’accès à la sonde. string
port Numéro de port à sonder. int (obligatoire)
scheme Le schéma. 'http'
'https'

ContainerPort (en anglais)

Nom Description Value
port Numéro de port exposé dans le groupe de conteneurs. int (obligatoire)
protocol Protocole associé au port. 'TCP'
'UDP'

Sonde de conteneur

Nom Description Value
exec Commande d’exécution à sonder containerExec
failureThreshold Seuil d’échec. int
httpGet Paramètres Http Get à sonder containerHttpGet
initialDelaySeconds Délai initial secondes. int
periodSeconds Secondes de période. int
successThreshold Seuil de réussite. int
timeoutSeconds Délai d’expiration des secondes. int

Propriétés du conteneur

Nom Description Value
commande Commandes à exécuter dans l’instance de conteneur sous forme exec. chaîne de caractères[]
configMap Carte de configuration. ConfigMap
environmentVariables Variables d’environnement à définir dans l’instance de conteneur. EnvironmentVariable[]
image Nom de l’image utilisée pour créer l’instance de conteneur. string
livenessProbe La sonde liveness. ContainerProbe
ports Ports exposés sur l’instance de conteneur. ConteneurPort[]
readinessProbe Sonde de préparation. ContainerProbe
resources Configuration requise pour les ressources de l’instance de conteneur. ResourceRequirements
securityContext Propriétés de sécurité du conteneur. SecurityContextDefinition
volumeMontures Montages de volume disponibles pour l’instance de conteneur. VolumeMount[]

DeploymentExtensionSpec

Nom Description Value
nom Nom de l’extension. chaîne (obligatoire)
Propriétés Propriétés spécifiques à l’extension DeploymentExtensionSpecProperties

DeploymentExtensionSpecProperties

Nom Description Value
extensionType Type d’extension à ajouter. chaîne (obligatoire)
protectedSettings Paramètres protégés pour l’extension. N’importe lequel
settings Paramètres de l’extension. N’importe lequel
version Version de l’extension utilisée. chaîne (obligatoire)

DnsConfiguration

Nom Description Value
nameServers Serveurs DNS pour le groupe de conteneurs. string[] (obligatoire)
options Options DNS pour le groupe de conteneurs. string
searchDomains Domaines de recherche DNS pour la recherche de nom d’hôte dans le groupe de conteneurs. string

Propriétés de chiffrement

Nom Description Value
identity Identité managée keyvault. string
keyName Nom de la clé de chiffrement. chaîne (obligatoire)
keyVersion Version de la clé de chiffrement. chaîne (obligatoire)
vaultBaseUrl URL de base du coffre de clés. chaîne (obligatoire)

EnvironmentVariable

Nom Description Value
nom Nom de la variable d’environnement. chaîne (obligatoire)
secureValue Valeur de la variable d’environnement sécurisée. corde

Contraintes:
Valeur sensible. Passez en tant que paramètre sécurisé.
secureValueReference Référence de la variable d’environnement sécurisée. string
value Valeur de la variable d’environnement. string

GitRepoVolume

Nom Description Value
directory Nom du répertoire cible. Ne doit pas contenir ou commencer par '..'. Si « . » est fourni, le répertoire du volume est le dépôt git. Sinon, s’il est spécifié, le volume contiendra le dépôt git dans le sous-répertoire avec le nom donné. string
répertoire URL du dépôt chaîne (obligatoire)
révision Valider le hachage pour la révision spécifiée. string

Ressource Gpu

Nom Description Value
count Nombre de ressources GPU. int (obligatoire)
sku Référence SKU de la ressource GPU. 'K80'
'P100'
'V100' (obligatoire)

HttpHeader

Nom Description Value
nom Nom de l’en-tête. string
value Valeur d’en-tête. string

IdentityAccessControl

Nom Description Value
accès Niveau d’accès de l’identité. 'All'
« Système »
'Utilisateur'
identity Identité. string

IdentityAcls

Nom Description Value
Acl Niveaux de contrôle d’accès pour chaque identité. IdentityAccessControl[]
defaultAccess Niveau d’accès par défaut. 'All'
« Système »
'Utilisateur'

ImageRegistryCredential

Nom Description Value
identity Identité du registre privé. string
identityUrl URL d’identité du registre privé. string
password Mot de passe du registre privé. corde

Contraintes:
Valeur sensible. Passez en tant que paramètre sécurisé.
passwordReference Référence pour le mot de passe du registre privé. string
server Le serveur de Registre d’images Docker sans protocole tel que « http » et « https ». chaîne (obligatoire)
username Nom d’utilisateur du registre privé. string

InitContainerDefinition

Nom Description Value
nom Nom du conteneur init. chaîne (obligatoire)
Propriétés Propriétés du conteneur init. InitContainerPropertiesDefinition (obligatoire)

InitContainerPropertiesDefinition

Nom Description Value
commande Commande à exécuter dans le conteneur init sous forme exec. chaîne de caractères[]
environmentVariables Variables d’environnement à définir dans le conteneur init. EnvironmentVariable[]
image Image du conteneur init. string
securityContext Propriétés de sécurité du conteneur. SecurityContextDefinition
volumeMontures Montages de volume disponibles pour le conteneur init. VolumeMount[]

adresse IP

Nom Description Value
autoGeneratedDomainNameLabelScope Valeur représentant l’énumération de sécurité. La valeur « Non sécurisé » est la valeur par défaut si elle n’est pas sélectionnée et signifie que l’étiquette de nom de domaine de l’objet n’est pas sécurisée par rapport à la prise de contrôle de sous-domaine. La valeur « TenantReuse » est la valeur par défaut si elle est sélectionnée et signifie que l’étiquette de nom de domaine de l’objet peut être réutilisée dans le même locataire. La valeur « SubscriptionReuse » signifie que l’étiquette de nom de domaine de l’objet peut être réutilisée dans le même abonnement. La valeur « ResourceGroupReuse » signifie que l’étiquette de nom de domaine de l’objet peut être réutilisée dans le même groupe de ressources. La valeur « NoReuse » signifie que l’étiquette de nom de domaine de l’objet ne peut pas être réutilisée dans le même groupe de ressources, abonnement ou locataire. 'Noreuse'
'ResourceGroupReuse'
'Réutilisation de l’abonnement'
'Réutilisation des locataires'
'Non sécurisé'
dnsNameLabel Étiquette de nom DNS pour l’adresse IP. string
Ip Adresse IP exposée à l’Internet public. string
ports Liste des ports exposés sur le groupe de conteneurs. port[] (obligatoire)
type Spécifie si l’adresse IP est exposée à l’Internet public ou au réseau virtuel privé. 'Private'
'Public' (obligatoire)

LogAnalytics

Nom Description Value
logType Type de journal à utiliser. « ContainerInsights »
'ContainerInstanceLogs'
metadata Métadonnées pour Log Analytics. LogAnalyticsMetadata
workspaceId ID d’espace de travail pour Log Analytics chaîne (obligatoire)
workspaceKey Clé d’espace de travail pour Log Analytics corde

Contraintes:
Valeur sensible. Passez en tant que paramètre sécurisé. (required)
workspaceResourceId ID de ressource de l’espace de travail pour Log Analytics corde

Contraintes:
Valeur sensible. Passez en tant que paramètre sécurisé.

LogAnalyticsMetadata

Nom Description Value

Port

Nom Description Value
port Numéro de port. int (obligatoire)
protocol Protocole associé au port. 'TCP'
'UDP'

ResourceLimits

Nom Description Value
cpu Limite du processeur de cette instance de conteneur. int
gpu Limite GPU de cette instance de conteneur. GpuResource
memoryInGB Limite de mémoire en Go de cette instance de conteneur. int

ResourceRequests

Nom Description Value
cpu Demande d’UC de cette instance de conteneur. int (obligatoire)
gpu Requête GPU de cette instance de conteneur. GpuResource
memoryInGB Demande de mémoire en Go de cette instance de conteneur. int (obligatoire)

ResourceRequirements

Nom Description Value
limits Limites de ressources de cette instance de conteneur. ResourceLimits
requests Demandes de ressources de cette instance de conteneur. ResourceRequests (obligatoire)

Référence secrète

Nom Description Value
identity ID de ressource ARM de l’identité managée qui a accès au secret dans le coffre de clés chaîne (obligatoire)
nom Identificateur de la référence de secret chaîne (obligatoire)
secretReferenceUri URI du secret dans le coffre de clés chaîne (obligatoire)

SecurityContextCapabilitiesDefinition

Nom Description Value
add Fonctionnalités à ajouter au conteneur. chaîne de caractères[]
baisse Fonctionnalités à supprimer du conteneur. chaîne de caractères[]

SecurityContextDefinition

Nom Description Value
allowPrivilegeEscalation Valeur booléenne indiquant si le processus init peut élever ses privilèges bool
capabilities Fonctionnalités à ajouter ou supprimer à partir d’un conteneur. SecurityContextCapabilitiesDefinition
privilégié Indicateur permettant de déterminer si les autorisations de conteneur sont élevées à Privileged. bool
runAsGroup Définit le GID utilisateur du conteneur. int
runAsUser Définit l’UID utilisateur du conteneur. int
seccompProfile chaîne encodée en base64 contenant le contenu du json dans le profil seccomp string

StandbyPoolProfileDefinition

Nom Description Value
failContainerGroupCreateOnReuseFailure Indicateur pour déterminer si ACI doit échouer la demande de création si le groupe de conteneurs ne peut pas être obtenu à partir du pool de secours. bool
id ID de référence du profil de pool de secours. Il s’agit d’un ID de ressource ARM sous la forme : « /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StandbyPool/standbyContainerGroupPools/{standbyPoolName} ». string

UserAssignedIdentities

Nom Description Value

Volume

Nom Description Value
azureFile Volume De fichiers Azure. AzureFileVolume
emptyDir Volume de répertoire vide. N’importe lequel
gitRepo Volume du dépôt Git. GitRepoVolume
nom Nom du volume. chaîne (obligatoire)
secret Volume de secrets. VolumeSecret
secretReference Volume de référence de secret. VolumeSecretRéférence

Montage en volume

Nom Description Value
mountPath Chemin d’accès au sein du conteneur où le volume doit être monté. Ne doit pas contenir de deux-points (:). chaîne (obligatoire)
nom Nom du montage du volume. chaîne (obligatoire)
readOnly Indicateur indiquant si le montage de volume est en lecture seule. bool

VolumeSecret

Nom Description Value

VolumeSecretRéférence

Nom Description Value

Définition de ressource Terraform (fournisseur AzAPI)

Le type de ressource containerGroups peut être déployé avec des opérations qui ciblent :

  • Groupes de ressources Pour une liste des propriétés modifiées dans chaque version d’API, voir journal des modifications.

Exemples d’utilisation

Échantillons Terraform

Exemple de base de déploiement d’une instance Azure Container Group.

terraform {
  required_providers {
    azapi = {
      source = "Azure/azapi"
    }
  }
}

provider "azapi" {
  skip_provider_registration = false
}

variable "resource_name" {
  type    = string
  default = "acctest0001"
}

variable "location" {
  type    = string
  default = "westeurope"
}

resource "azapi_resource" "resourceGroup" {
  type     = "Microsoft.Resources/resourceGroups@2020-06-01"
  name     = var.resource_name
  location = var.location
}

resource "azapi_resource" "containerGroup" {
  type      = "Microsoft.ContainerInstance/containerGroups@2023-05-01"
  parent_id = azapi_resource.resourceGroup.id
  name      = var.resource_name
  location  = var.location
  body = {
    properties = {
      containers = [
        {
          name = "hw"
          properties = {
            command = [
            ]
            environmentVariables = [
            ]
            image = "ubuntu:20.04"
            ports = [
              {
                port     = 80
                protocol = "TCP"
              },
            ]
            resources = {
              requests = {
                cpu        = 0.5
                memoryInGB = 0.5
              }
            }
          }
        },
      ]
      initContainers = [
      ]
      ipAddress = {
        autoGeneratedDomainNameLabelScope = "Unsecure"
        ports = [
          {
            port     = 80
            protocol = "TCP"
          },
        ]
        type = "Public"
      }
      osType        = "Linux"
      restartPolicy = "Always"
      volumes = [
      ]
    }
    tags = {
      environment = "Testing"
    }
    zones = [
    ]
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}

Modules vérifiés Azure

Les modules vérifiés Azure suivants peuvent être utilisés pour déployer ce type de ressource.

Module Description
d’instance de conteneur Module de ressources AVM pour Container Instance

Format de ressource

Pour créer une ressource Microsoft.ContainerInstance/containerGroups, ajoutez le terraform suivant à votre modèle.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.ContainerInstance/containerGroups@2026-07-01"
  name = "string"
  parent_id = "string"
  identity {
    type = "string"
    identity_ids = [
      "string"
    ]
  }
  location = "string"
  tags = {
    {customized property} = "string"
  }
  body = {
    properties = {
      confidentialComputeProperties = {
        ccePolicy = "string"
      }
      containerGroupProfile = {
        id = "string"
        revision = int
      }
      containers = [
        {
          name = "string"
          properties = {
            command = [
              "string"
            ]
            configMap = {
              keyValuePairs = {
                {customized property} = "string"
              }
            }
            environmentVariables = [
              {
                name = "string"
                secureValue = "string"
                secureValueReference = "string"
                value = "string"
              }
            ]
            image = "string"
            livenessProbe = {
              exec = {
                command = [
                  "string"
                ]
              }
              failureThreshold = int
              httpGet = {
                httpHeaders = [
                  {
                    name = "string"
                    value = "string"
                  }
                ]
                path = "string"
                port = int
                scheme = "string"
              }
              initialDelaySeconds = int
              periodSeconds = int
              successThreshold = int
              timeoutSeconds = int
            }
            ports = [
              {
                port = int
                protocol = "string"
              }
            ]
            readinessProbe = {
              exec = {
                command = [
                  "string"
                ]
              }
              failureThreshold = int
              httpGet = {
                httpHeaders = [
                  {
                    name = "string"
                    value = "string"
                  }
                ]
                path = "string"
                port = int
                scheme = "string"
              }
              initialDelaySeconds = int
              periodSeconds = int
              successThreshold = int
              timeoutSeconds = int
            }
            resources = {
              limits = {
                cpu = int
                gpu = {
                  count = int
                  sku = "string"
                }
                memoryInGB = int
              }
              requests = {
                cpu = int
                gpu = {
                  count = int
                  sku = "string"
                }
                memoryInGB = int
              }
            }
            securityContext = {
              allowPrivilegeEscalation = bool
              capabilities = {
                add = [
                  "string"
                ]
                drop = [
                  "string"
                ]
              }
              privileged = bool
              runAsGroup = int
              runAsUser = int
              seccompProfile = "string"
            }
            volumeMounts = [
              {
                mountPath = "string"
                name = "string"
                readOnly = bool
              }
            ]
          }
        }
      ]
      diagnostics = {
        logAnalytics = {
          logType = "string"
          metadata = {
            {customized property} = "string"
          }
          workspaceId = "string"
          workspaceKey = "string"
          workspaceResourceId = "string"
        }
      }
      dnsConfig = {
        nameServers = [
          "string"
        ]
        options = "string"
        searchDomains = "string"
      }
      encryptionProperties = {
        identity = "string"
        keyName = "string"
        keyVersion = "string"
        vaultBaseUrl = "string"
      }
      extensions = [
        {
          name = "string"
          properties = {
            extensionType = "string"
            protectedSettings = ?
            settings = ?
            version = "string"
          }
        }
      ]
      identityAcls = {
        acls = [
          {
            access = "string"
            identity = "string"
          }
        ]
        defaultAccess = "string"
      }
      imageRegistryCredentials = [
        {
          identity = "string"
          identityUrl = "string"
          password = "string"
          passwordReference = "string"
          server = "string"
          username = "string"
        }
      ]
      initContainers = [
        {
          name = "string"
          properties = {
            command = [
              "string"
            ]
            environmentVariables = [
              {
                name = "string"
                secureValue = "string"
                secureValueReference = "string"
                value = "string"
              }
            ]
            image = "string"
            securityContext = {
              allowPrivilegeEscalation = bool
              capabilities = {
                add = [
                  "string"
                ]
                drop = [
                  "string"
                ]
              }
              privileged = bool
              runAsGroup = int
              runAsUser = int
              seccompProfile = "string"
            }
            volumeMounts = [
              {
                mountPath = "string"
                name = "string"
                readOnly = bool
              }
            ]
          }
        }
      ]
      ipAddress = {
        autoGeneratedDomainNameLabelScope = "string"
        dnsNameLabel = "string"
        ip = "string"
        ports = [
          {
            port = int
            protocol = "string"
          }
        ]
        type = "string"
      }
      osType = "string"
      priority = "string"
      restartPolicy = "string"
      secretReferences = [
        {
          identity = "string"
          name = "string"
          secretReferenceUri = "string"
        }
      ]
      sku = "string"
      standbyPoolProfile = {
        failContainerGroupCreateOnReuseFailure = bool
        id = "string"
      }
      subnetIds = [
        {
          id = "string"
          name = "string"
        }
      ]
      volumes = [
        {
          azureFile = {
            readOnly = bool
            shareName = "string"
            storageAccountKey = "string"
            storageAccountKeyReference = "string"
            storageAccountName = "string"
            userAssignedIdentityClientId = "string"
          }
          emptyDir = ?
          gitRepo = {
            directory = "string"
            repository = "string"
            revision = "string"
          }
          name = "string"
          secret = {
            {customized property} = "string"
          }
          secretReference = {
            {customized property} = "string"
          }
        }
      ]
    }
    zones = [
      "string"
    ]
  }
}

Valeurs de propriété

Microsoft.ContainerInstance/containerGroups

Nom Description Value
identity Identité du groupe de conteneurs, si elle est configurée. ContainerGroupIdentity
location L’emplacement des ressources du groupe conteneur. string
nom Nom de la ressource chaîne (obligatoire)
Propriétés Propriétés du groupe de conteneurs ContainerGroupProperties (obligatoire)
tags Étiquettes de ressources Dictionnaire de noms et de valeurs d’étiquettes.
type Type de ressource « Microsoft. ContainerInstance/containerGroups@2026-07-01"
zones Zones de disponibilité. chaîne de caractères[]

AzureFileVolume

Nom Description Value
readOnly Indicateur indiquant si le fichier Azure partagé est monté en tant que volume en lecture seule. bool
shareName Nom du partage de fichiers Azure à monter en tant que volume. chaîne (obligatoire)
storageAccountKey Clé d’accès au compte de stockage utilisée pour accéder au partage de fichiers Azure. corde

Contraintes:
Valeur sensible. Passez en tant que paramètre sécurisé.
storageAccountKeyReference Référence à la clé d’accès du compte de stockage utilisée pour accéder au partage de fichiers Azure. string
storageAccountName Nom du compte de stockage qui contient le partage de fichiers Azure. chaîne (obligatoire)
userAssignedIdentityClientId L’identifiant client de l’identité managée attribuée par l’utilisateur qui a accès au partage de fichiers Azure. string

ConfidentialComputeProperties

Nom Description Value
ccePolicy Stratégie d’application de calcul confidentielle encodée en base64 string

ConfigMap

Nom Description Value
keyValuePairs Le dictionnaire des paires clé-valeur dans le mappage de configuration. ConfigMapKeyValuePairs

ConfigMapKeyValuePairs

Nom Description Value

Conteneur

Nom Description Value
nom Nom fourni par l’utilisateur de l’instance de conteneur. chaîne (obligatoire)
Propriétés Propriétés de l’instance de conteneur. ContainerProperties (obligatoire)

ContainerExec

Nom Description Value
commande Commandes à exécuter dans le conteneur. chaîne de caractères[]

ContainerGroupDiagnostics

Nom Description Value
logAnalytics Informations log Analytics du groupe de conteneurs. LogAnalytics

ContainerGroupIdentity

Nom Description Value
type Type d’identité utilisé pour le groupe de conteneurs. Le type « SystemAssigned, UserAssigned » inclut à la fois une identité créée implicitement et un ensemble d’identités affectées par l’utilisateur. Le type « None » supprime toutes les identités du groupe de conteneurs. « Aucun »
'SystemAssigned'
« SystemAssigned, UserAssigned »
'UserAssigned'
userAssignedIdentities Liste des identités utilisateur associées au groupe de conteneurs. ContainerGroupIdentityUserAssignedIdentities

ContainerGroupIdentityUserAssignedIdentities

Nom Description Value

ContainerGroupProfileReferenceDefinition

Nom Description Value
id ID de référence du profil de groupe de conteneurs.Il s’agit d’un ID de ressource ARM sous la forme : « /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroupProfiles/{containerGroupProfileName} ». string
révision Révision de référence du profil de groupe de conteneurs. int

ContainerGroupProperties

Nom Description Value
confidentialComputeProperties Propriétés du groupe de conteneurs confidentiel ConfidentialComputeProperties
containerGroupProfile Propriétés du profil de groupe de conteneurs de référence. ContainerGroupProfileReferenceDefinition
containers Conteneurs au sein du groupe de conteneurs. container[] (obligatoire)
diagnostics Informations de diagnostic pour un groupe de conteneurs. ContainerGroupDiagnostics
dnsConfig Informations de configuration DNS pour un groupe de conteneurs. DnsConfiguration
cryptagePropriétés Propriétés de chiffrement d’un groupe de conteneurs. EncryptionProperties
Extensions extensions utilisées par kubelet virtuel DeploymentExtensionSpec[]
identityAcls Niveaux de contrôle d’accès des identités. IdentityAcls
imageRegistryCredentials Informations d’identification du Registre d’images à partir desquelles le groupe de conteneurs est créé. ImageRegistryCredential[]
initContainers Conteneurs init pour un groupe de conteneurs. InitContainerDefinition[]
ipAddress Type d’adresse IP du groupe de conteneurs. IpAddress
osType Type de système d’exploitation requis par les conteneurs dans le groupe de conteneurs. 'Linux'
« Windows »
priority Priorité du groupe de conteneurs. 'Normal'
'Spot'
restartPolicy Redémarrez la stratégie pour tous les conteneurs au sein du groupe de conteneurs.
- Always toujours redémarrer
- OnFailure Redémarrer en cas d’échec
- Never Jamais redémarrer
'Always'
'Never'
'OnFailure'
secretRéférences Références secrètes qui seront référencées dans le groupe de conteneurs. Référence Secrète[]
sku Référence SKU d’un groupe de conteneurs. 'Confidentiel'
« Dévoué »
'Non spécifié'
« Standard »
standbyPoolProfile Propriétés du profil du pool de secours de référence. standbyPoolProfileDefinition
subnetIds ID de ressource de sous-réseau pour un groupe de conteneurs. ContainerGroupSubnetId[]
volumes Liste des volumes pouvant être montés par des conteneurs dans ce groupe de conteneurs. de volume []

ContainerGroupSubnetId

Nom Description Value
id ID de ressource du réseau virtuel et du sous-réseau. chaîne (obligatoire)
nom Nom convivial du sous-réseau. string

ContainerGroupTags

Nom Description Value

ContainerHttpGet

Nom Description Value
httpHeaders (en-tête http) En-têtes HTTP. HttpHeader []
chemin Chemin d’accès à la sonde. string
port Numéro de port à sonder. int (obligatoire)
scheme Le schéma. 'http'
'https'

ContainerPort (en anglais)

Nom Description Value
port Numéro de port exposé dans le groupe de conteneurs. int (obligatoire)
protocol Protocole associé au port. 'TCP'
'UDP'

Sonde de conteneur

Nom Description Value
exec Commande d’exécution à sonder containerExec
failureThreshold Seuil d’échec. int
httpGet Paramètres Http Get à sonder containerHttpGet
initialDelaySeconds Délai initial secondes. int
periodSeconds Secondes de période. int
successThreshold Seuil de réussite. int
timeoutSeconds Délai d’expiration des secondes. int

Propriétés du conteneur

Nom Description Value
commande Commandes à exécuter dans l’instance de conteneur sous forme exec. chaîne de caractères[]
configMap Carte de configuration. ConfigMap
environmentVariables Variables d’environnement à définir dans l’instance de conteneur. EnvironmentVariable[]
image Nom de l’image utilisée pour créer l’instance de conteneur. string
livenessProbe La sonde liveness. ContainerProbe
ports Ports exposés sur l’instance de conteneur. ConteneurPort[]
readinessProbe Sonde de préparation. ContainerProbe
resources Configuration requise pour les ressources de l’instance de conteneur. ResourceRequirements
securityContext Propriétés de sécurité du conteneur. SecurityContextDefinition
volumeMontures Montages de volume disponibles pour l’instance de conteneur. VolumeMount[]

DeploymentExtensionSpec

Nom Description Value
nom Nom de l’extension. chaîne (obligatoire)
Propriétés Propriétés spécifiques à l’extension DeploymentExtensionSpecProperties

DeploymentExtensionSpecProperties

Nom Description Value
extensionType Type d’extension à ajouter. chaîne (obligatoire)
protectedSettings Paramètres protégés pour l’extension. N’importe lequel
settings Paramètres de l’extension. N’importe lequel
version Version de l’extension utilisée. chaîne (obligatoire)

DnsConfiguration

Nom Description Value
nameServers Serveurs DNS pour le groupe de conteneurs. string[] (obligatoire)
options Options DNS pour le groupe de conteneurs. string
searchDomains Domaines de recherche DNS pour la recherche de nom d’hôte dans le groupe de conteneurs. string

Propriétés de chiffrement

Nom Description Value
identity Identité managée keyvault. string
keyName Nom de la clé de chiffrement. chaîne (obligatoire)
keyVersion Version de la clé de chiffrement. chaîne (obligatoire)
vaultBaseUrl URL de base du coffre de clés. chaîne (obligatoire)

EnvironmentVariable

Nom Description Value
nom Nom de la variable d’environnement. chaîne (obligatoire)
secureValue Valeur de la variable d’environnement sécurisée. corde

Contraintes:
Valeur sensible. Passez en tant que paramètre sécurisé.
secureValueReference Référence de la variable d’environnement sécurisée. string
value Valeur de la variable d’environnement. string

GitRepoVolume

Nom Description Value
directory Nom du répertoire cible. Ne doit pas contenir ou commencer par '..'. Si « . » est fourni, le répertoire du volume est le dépôt git. Sinon, s’il est spécifié, le volume contiendra le dépôt git dans le sous-répertoire avec le nom donné. string
répertoire URL du dépôt chaîne (obligatoire)
révision Valider le hachage pour la révision spécifiée. string

Ressource Gpu

Nom Description Value
count Nombre de ressources GPU. int (obligatoire)
sku Référence SKU de la ressource GPU. 'K80'
'P100'
'V100' (obligatoire)

HttpHeader

Nom Description Value
nom Nom de l’en-tête. string
value Valeur d’en-tête. string

IdentityAccessControl

Nom Description Value
accès Niveau d’accès de l’identité. 'All'
« Système »
'Utilisateur'
identity Identité. string

IdentityAcls

Nom Description Value
Acl Niveaux de contrôle d’accès pour chaque identité. IdentityAccessControl[]
defaultAccess Niveau d’accès par défaut. 'All'
« Système »
'Utilisateur'

ImageRegistryCredential

Nom Description Value
identity Identité du registre privé. string
identityUrl URL d’identité du registre privé. string
password Mot de passe du registre privé. corde

Contraintes:
Valeur sensible. Passez en tant que paramètre sécurisé.
passwordReference Référence pour le mot de passe du registre privé. string
server Le serveur de Registre d’images Docker sans protocole tel que « http » et « https ». chaîne (obligatoire)
username Nom d’utilisateur du registre privé. string

InitContainerDefinition

Nom Description Value
nom Nom du conteneur init. chaîne (obligatoire)
Propriétés Propriétés du conteneur init. InitContainerPropertiesDefinition (obligatoire)

InitContainerPropertiesDefinition

Nom Description Value
commande Commande à exécuter dans le conteneur init sous forme exec. chaîne de caractères[]
environmentVariables Variables d’environnement à définir dans le conteneur init. EnvironmentVariable[]
image Image du conteneur init. string
securityContext Propriétés de sécurité du conteneur. SecurityContextDefinition
volumeMontures Montages de volume disponibles pour le conteneur init. VolumeMount[]

adresse IP

Nom Description Value
autoGeneratedDomainNameLabelScope Valeur représentant l’énumération de sécurité. La valeur « Non sécurisé » est la valeur par défaut si elle n’est pas sélectionnée et signifie que l’étiquette de nom de domaine de l’objet n’est pas sécurisée par rapport à la prise de contrôle de sous-domaine. La valeur « TenantReuse » est la valeur par défaut si elle est sélectionnée et signifie que l’étiquette de nom de domaine de l’objet peut être réutilisée dans le même locataire. La valeur « SubscriptionReuse » signifie que l’étiquette de nom de domaine de l’objet peut être réutilisée dans le même abonnement. La valeur « ResourceGroupReuse » signifie que l’étiquette de nom de domaine de l’objet peut être réutilisée dans le même groupe de ressources. La valeur « NoReuse » signifie que l’étiquette de nom de domaine de l’objet ne peut pas être réutilisée dans le même groupe de ressources, abonnement ou locataire. 'Noreuse'
'ResourceGroupReuse'
'Réutilisation de l’abonnement'
'Réutilisation des locataires'
'Non sécurisé'
dnsNameLabel Étiquette de nom DNS pour l’adresse IP. string
Ip Adresse IP exposée à l’Internet public. string
ports Liste des ports exposés sur le groupe de conteneurs. port[] (obligatoire)
type Spécifie si l’adresse IP est exposée à l’Internet public ou au réseau virtuel privé. 'Private'
'Public' (obligatoire)

LogAnalytics

Nom Description Value
logType Type de journal à utiliser. « ContainerInsights »
'ContainerInstanceLogs'
metadata Métadonnées pour Log Analytics. LogAnalyticsMetadata
workspaceId ID d’espace de travail pour Log Analytics chaîne (obligatoire)
workspaceKey Clé d’espace de travail pour Log Analytics corde

Contraintes:
Valeur sensible. Passez en tant que paramètre sécurisé. (required)
workspaceResourceId ID de ressource de l’espace de travail pour Log Analytics corde

Contraintes:
Valeur sensible. Passez en tant que paramètre sécurisé.

LogAnalyticsMetadata

Nom Description Value

Port

Nom Description Value
port Numéro de port. int (obligatoire)
protocol Protocole associé au port. 'TCP'
'UDP'

ResourceLimits

Nom Description Value
cpu Limite du processeur de cette instance de conteneur. int
gpu Limite GPU de cette instance de conteneur. GpuResource
memoryInGB Limite de mémoire en Go de cette instance de conteneur. int

ResourceRequests

Nom Description Value
cpu Demande d’UC de cette instance de conteneur. int (obligatoire)
gpu Requête GPU de cette instance de conteneur. GpuResource
memoryInGB Demande de mémoire en Go de cette instance de conteneur. int (obligatoire)

ResourceRequirements

Nom Description Value
limits Limites de ressources de cette instance de conteneur. ResourceLimits
requests Demandes de ressources de cette instance de conteneur. ResourceRequests (obligatoire)

Référence secrète

Nom Description Value
identity ID de ressource ARM de l’identité managée qui a accès au secret dans le coffre de clés chaîne (obligatoire)
nom Identificateur de la référence de secret chaîne (obligatoire)
secretReferenceUri URI du secret dans le coffre de clés chaîne (obligatoire)

SecurityContextCapabilitiesDefinition

Nom Description Value
add Fonctionnalités à ajouter au conteneur. chaîne de caractères[]
baisse Fonctionnalités à supprimer du conteneur. chaîne de caractères[]

SecurityContextDefinition

Nom Description Value
allowPrivilegeEscalation Valeur booléenne indiquant si le processus init peut élever ses privilèges bool
capabilities Fonctionnalités à ajouter ou supprimer à partir d’un conteneur. SecurityContextCapabilitiesDefinition
privilégié Indicateur permettant de déterminer si les autorisations de conteneur sont élevées à Privileged. bool
runAsGroup Définit le GID utilisateur du conteneur. int
runAsUser Définit l’UID utilisateur du conteneur. int
seccompProfile chaîne encodée en base64 contenant le contenu du json dans le profil seccomp string

StandbyPoolProfileDefinition

Nom Description Value
failContainerGroupCreateOnReuseFailure Indicateur pour déterminer si ACI doit échouer la demande de création si le groupe de conteneurs ne peut pas être obtenu à partir du pool de secours. bool
id ID de référence du profil de pool de secours. Il s’agit d’un ID de ressource ARM sous la forme : « /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StandbyPool/standbyContainerGroupPools/{standbyPoolName} ». string

UserAssignedIdentities

Nom Description Value

Volume

Nom Description Value
azureFile Volume De fichiers Azure. AzureFileVolume
emptyDir Volume de répertoire vide. N’importe lequel
gitRepo Volume du dépôt Git. GitRepoVolume
nom Nom du volume. chaîne (obligatoire)
secret Volume de secrets. VolumeSecret
secretReference Volume de référence de secret. VolumeSecretRéférence

Montage en volume

Nom Description Value
mountPath Chemin d’accès au sein du conteneur où le volume doit être monté. Ne doit pas contenir de deux-points (:). chaîne (obligatoire)
nom Nom du montage du volume. chaîne (obligatoire)
readOnly Indicateur indiquant si le montage de volume est en lecture seule. bool

VolumeSecret

Nom Description Value

VolumeSecretRéférence

Nom Description Value