Définition de ressource de modèle ARM
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.
Pour créer une ressource Microsoft.ContainerInstance/containerGroups, ajoutez le code JSON suivant à votre modèle.
{
"type": "Microsoft.ContainerInstance/containerGroups",
"apiVersion": "2025-09-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"
},
"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 |
Descriptif |
Valeur |
| apiVersion |
Version de l’API |
'2025-09-01' |
| identité |
Identité du groupe de conteneurs, si elle est configurée. |
ContainerGroupIdentity |
| emplacement |
Emplacement de la ressource. |
corde |
| nom |
Nom de la ressource |
chaîne (obligatoire) |
| Propriétés |
Propriétés du groupe de conteneurs |
ContainerGroupPropertiesPropertiesProperties (obligatoire) |
| étiquettes |
Balises de ressource |
Dictionnaire de noms et de valeurs d’étiquettes. Consultez les balises dans les modèles |
| type |
Type de ressource |
'Microsoft.ContainerInstance/containerGroups' |
| Zones |
Zones du groupe de conteneurs. |
chaîne de caractères[] |
AzureFileVolume
| Nom |
Descriptif |
Valeur |
| lecture seule |
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) |
| storageCléCompte |
Clé d’accès au compte de stockage utilisée pour accéder au partage de fichiers Azure. |
corde |
| storageAccountKeyReference |
Référence à la clé d’accès du compte de stockage utilisée pour accéder au partage de fichiers Azure. |
corde |
| nomDuCompteDeStockage |
Nom du compte de stockage qui contient le partage de fichiers Azure. |
chaîne (obligatoire) |
ConfidentialComputeProperties
| Nom |
Descriptif |
Valeur |
| ccePolicy |
Stratégie d’application de calcul confidentielle encodée en base64 |
corde |
ConfigMap
| Nom |
Descriptif |
Valeur |
| keyValuePairs |
Le dictionnaire des paires clé-valeur dans le mappage de configuration. |
ConfigMapKeyValuePairs |
ConfigMapKeyValuePairs
Conteneur
| Nom |
Descriptif |
Valeur |
| 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 |
Descriptif |
Valeur |
| commander |
Commandes à exécuter dans le conteneur. |
chaîne de caractères[] |
ContainerGroupDiagnostics
| Nom |
Descriptif |
Valeur |
| logAnalytics |
Informations log Analytics du groupe de conteneurs. |
LogAnalytics |
ContainerGroupIdentity
| Nom |
Descriptif |
Valeur |
| 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' |
| Identités attribuées par l'utilisateur |
Liste des identités utilisateur associées au groupe de conteneurs. |
ContainerGroupIdentityUserAssignedIdentities |
ContainerGroupIdentityUserAssignedIdentities
ContainerGroupProfileReferenceDefinition
| Nom |
Descriptif |
Valeur |
| pièce d'identité |
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} ». |
corde |
| révision |
Révision de référence du profil de groupe de conteneurs. |
Int |
ContainerGroupPropertiesPropertiesProperties
| Nom |
Descriptif |
Valeur |
| 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 |
| Conteneurs |
Conteneurs au sein du groupe de conteneurs. |
container[] (obligatoire) |
| diagnostic |
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[] |
| adresse IP |
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' 'Fenêtres' |
| priorité |
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 |
« Toujours » « Jamais » '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 |
Descriptif |
Valeur |
| pièce d'identité |
ID de ressource du réseau virtuel et du sous-réseau. |
chaîne (obligatoire) |
| nom |
Nom convivial du sous-réseau. |
corde |
ContainerHttpGet
| Nom |
Descriptif |
Valeur |
| httpHeaders (en-tête http) |
En-têtes HTTP. |
HttpHeader [] |
| chemin |
Chemin d’accès à la sonde. |
corde |
| Port |
Numéro de port à sonder. |
int (obligatoire) |
| schéma |
Le schéma. |
'http' 'https' |
ContainerPort (en anglais)
| Nom |
Descriptif |
Valeur |
| Port |
Numéro de port exposé dans le groupe de conteneurs. |
int (obligatoire) |
| protocole |
Protocole associé au port. |
« TCP » « UDP » |
Sonde de conteneur
| Nom |
Descriptif |
Valeur |
| 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 |
| periodSecondes |
Secondes de période. |
Int |
| successThreshold |
Seuil de réussite. |
Int |
| timeoutSecondes |
Délai d’expiration des secondes. |
Int |
Propriétés du conteneur
| Nom |
Descriptif |
Valeur |
| commander |
Commandes à exécuter dans l’instance de conteneur sous forme exec. |
chaîne de caractères[] |
| configMap |
Carte de configuration. |
ConfigMap |
| variables d'environnement |
Variables d’environnement à définir dans l’instance de conteneur. |
VariableEnvironnement[] |
| image |
Nom de l’image utilisée pour créer l’instance de conteneur. |
corde |
| vivacitéSonde |
La sonde liveness. |
ContainerProbe |
| Ports |
Ports exposés sur l’instance de conteneur. |
ConteneurPort[] |
| état de préparationSonde |
Sonde de préparation. |
ContainerProbe |
| ressources |
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
DeploymentExtensionSpecProperties
| Nom |
Descriptif |
Valeur |
| extensionType |
Type d’extension à ajouter. |
chaîne (obligatoire) |
| protectedSettings |
Paramètres protégés pour l’extension. |
quelconque |
| Paramètres |
Paramètres de l’extension. |
quelconque |
| Version |
Version de l’extension utilisée. |
chaîne (obligatoire) |
DnsConfiguration
| Nom |
Descriptif |
Valeur |
| nameServers |
Serveurs DNS pour le groupe de conteneurs. |
string[] (obligatoire) |
| Options |
Options DNS pour le groupe de conteneurs. |
corde |
| searchDomains |
Domaines de recherche DNS pour la recherche de nom d’hôte dans le groupe de conteneurs. |
corde |
Propriétés de chiffrement
| Nom |
Descriptif |
Valeur |
| identité |
Identité managée keyvault. |
corde |
| 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 |
Descriptif |
Valeur |
| 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. |
corde |
| valeur |
Valeur de la variable d’environnement. |
corde |
GitRepoVolume
| Nom |
Descriptif |
Valeur |
| répertoire |
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é. |
corde |
| dépôt |
URL du référentiel |
chaîne (obligatoire) |
| révision |
Valider le hachage pour la révision spécifiée. |
corde |
Ressource Gpu
| Nom |
Descriptif |
Valeur |
| compter |
Nombre de ressources GPU. |
int (obligatoire) |
| Sku |
Référence SKU de la ressource GPU. |
'K80' 'P100' 'V100' (obligatoire) |
| Nom |
Descriptif |
Valeur |
| nom |
Nom de l’en-tête. |
corde |
| valeur |
Valeur d’en-tête. |
corde |
IdentityAccessControl
| Nom |
Descriptif |
Valeur |
| accès |
Niveau d’accès de l’identité. |
'Tous' « Système » 'Utilisateur' |
| identité |
Identité. |
corde |
IdentityAcls
| Nom |
Descriptif |
Valeur |
| Acl |
Niveaux de contrôle d’accès pour chaque identité. |
IdentityAccessControl[] |
| defaultAccess |
Niveau d’accès par défaut. |
'Tous' « Système » 'Utilisateur' |
ImageRegistryCredential
| Nom |
Descriptif |
Valeur |
| identité |
Identité du registre privé. |
corde |
| identityUrl |
URL d’identité du registre privé. |
corde |
| mot de passe |
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é. |
corde |
| serveur |
Le serveur de Registre d’images Docker sans protocole tel que « http » et « https ». |
chaîne (obligatoire) |
| nom d’utilisateur |
Nom d’utilisateur du registre privé. |
corde |
InitContainerDefinition
InitContainerPropertiesDefinition
| Nom |
Descriptif |
Valeur |
| commander |
Commande à exécuter dans le conteneur init sous forme exec. |
chaîne de caractères[] |
| variables d'environnement |
Variables d’environnement à définir dans le conteneur init. |
VariableEnvironnement[] |
| image |
Image du conteneur init. |
corde |
| securityContext |
Propriétés de sécurité du conteneur. |
SecurityContextDefinition |
| volumeMontures |
Montages de volume disponibles pour le conteneur init. |
VolumeMount[] |
adresse IP
| Nom |
Descriptif |
Valeur |
| 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. |
corde |
| Ip |
Adresse IP exposée à l’Internet public. |
corde |
| 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é. |
« Privé » 'Public' (obligatoire) |
LogAnalytics
| Nom |
Descriptif |
Valeur |
| logType de journal |
Type de journal à utiliser. |
« ContainerInsights » 'ContainerInstanceLogs' |
| métadonnées |
Métadonnées pour Log Analytics. |
LogAnalyticsMetadata |
| ID d'espace de travail |
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é. (obligatoire) |
| workspaceResourceId |
ID de ressource de l’espace de travail pour Log Analytics |
corde
Contraintes: Valeur sensible. Passez en tant que paramètre sécurisé. |
Port
| Nom |
Descriptif |
Valeur |
| Port |
Numéro de port. |
int (obligatoire) |
| protocole |
Protocole associé au port. |
« TCP » « UDP » |
ResourceLimits
| Nom |
Descriptif |
Valeur |
| 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 |
Descriptif |
Valeur |
| 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 |
Descriptif |
Valeur |
| Limites |
Limites de ressources de cette instance de conteneur. |
ResourceLimits |
| Requêtes |
Demandes de ressources de cette instance de conteneur. |
ResourceRequests (obligatoire) |
Référence secrète
| Nom |
Descriptif |
Valeur |
| identité |
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) |
SecretReferenceVolume
SecretVolume
SecurityContextCapabilitiesDefinition
| Nom |
Descriptif |
Valeur |
| ajouter |
Fonctionnalités à ajouter au conteneur. |
chaîne de caractères[] |
| goutte |
Fonctionnalités à supprimer du conteneur. |
chaîne de caractères[] |
SecurityContextDefinition
| Nom |
Descriptif |
Valeur |
| allowPrivilegeEscalation |
Valeur booléenne indiquant si le processus init peut élever ses privilèges |
Bool |
| Capacités |
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 |
corde |
StandbyPoolProfileDefinition
| Nom |
Descriptif |
Valeur |
| 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 |
| pièce d'identité |
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} ». |
corde |
UserAssignedIdentities
Volume
| Nom |
Descriptif |
Valeur |
| azureFile |
Volume De fichiers Azure. |
AzureFileVolume |
| rép_vidage |
Volume de répertoire vide. |
quelconque |
| gitRepo |
Volume du dépôt Git. |
GitRepoVolume |
| nom |
Nom du volume. |
chaîne (obligatoire) |
| secret |
Volume de secrets. |
SecretVolume |
| secretReference |
Volume de référence de secret. |
SecretReferenceVolume |
Montage en volume
| Nom |
Descriptif |
Valeur |
| 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) |
| lecture seule |
Indicateur indiquant si le montage de volume est en lecture seule. |
Bool |
Exemples d’utilisation
Modèles de démarrage rapide Microsoft Azure
Les modèles de démarrage rapide Azure suivants déployer ce type de ressource.
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.
Pour créer une ressource Microsoft.ContainerInstance/containerGroups, ajoutez le terraform suivant à votre modèle.
resource "azapi_resource" "symbolicname" {
type = "Microsoft.ContainerInstance/containerGroups@2025-09-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"
}
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 |
Descriptif |
Valeur |
| identité |
Identité du groupe de conteneurs, si elle est configurée. |
ContainerGroupIdentity |
| emplacement |
Emplacement de la ressource. |
corde |
| nom |
Nom de la ressource |
chaîne (obligatoire) |
| parent_id |
ID de la ressource à laquelle appliquer cette ressource d’extension. |
chaîne (obligatoire) |
| Propriétés |
Propriétés du groupe de conteneurs |
ContainerGroupPropertiesPropertiesProperties (obligatoire) |
| étiquettes |
Balises de ressource |
Dictionnaire de noms et de valeurs d’étiquettes. |
| type |
Type de ressource |
« Microsoft.ContainerInstance/containerGroups@2025-09-01 » |
| Zones |
Zones du groupe de conteneurs. |
chaîne de caractères[] |
AzureFileVolume
| Nom |
Descriptif |
Valeur |
| lecture seule |
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) |
| storageCléCompte |
Clé d’accès au compte de stockage utilisée pour accéder au partage de fichiers Azure. |
corde |
| storageAccountKeyReference |
Référence à la clé d’accès du compte de stockage utilisée pour accéder au partage de fichiers Azure. |
corde |
| nomDuCompteDeStockage |
Nom du compte de stockage qui contient le partage de fichiers Azure. |
chaîne (obligatoire) |
ConfidentialComputeProperties
| Nom |
Descriptif |
Valeur |
| ccePolicy |
Stratégie d’application de calcul confidentielle encodée en base64 |
corde |
ConfigMap
| Nom |
Descriptif |
Valeur |
| keyValuePairs |
Le dictionnaire des paires clé-valeur dans le mappage de configuration. |
ConfigMapKeyValuePairs |
ConfigMapKeyValuePairs
Conteneur
| Nom |
Descriptif |
Valeur |
| 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 |
Descriptif |
Valeur |
| commander |
Commandes à exécuter dans le conteneur. |
chaîne de caractères[] |
ContainerGroupDiagnostics
| Nom |
Descriptif |
Valeur |
| logAnalytics |
Informations log Analytics du groupe de conteneurs. |
LogAnalytics |
ContainerGroupIdentity
| Nom |
Descriptif |
Valeur |
| 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' |
| Identités attribuées par l'utilisateur |
Liste des identités utilisateur associées au groupe de conteneurs. |
ContainerGroupIdentityUserAssignedIdentities |
ContainerGroupIdentityUserAssignedIdentities
ContainerGroupProfileReferenceDefinition
| Nom |
Descriptif |
Valeur |
| pièce d'identité |
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} ». |
corde |
| révision |
Révision de référence du profil de groupe de conteneurs. |
Int |
ContainerGroupPropertiesPropertiesProperties
| Nom |
Descriptif |
Valeur |
| 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 |
| Conteneurs |
Conteneurs au sein du groupe de conteneurs. |
container[] (obligatoire) |
| diagnostic |
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[] |
| adresse IP |
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' 'Fenêtres' |
| priorité |
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 |
« Toujours » « Jamais » '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 |
Descriptif |
Valeur |
| pièce d'identité |
ID de ressource du réseau virtuel et du sous-réseau. |
chaîne (obligatoire) |
| nom |
Nom convivial du sous-réseau. |
corde |
ContainerHttpGet
| Nom |
Descriptif |
Valeur |
| httpHeaders (en-tête http) |
En-têtes HTTP. |
HttpHeader [] |
| chemin |
Chemin d’accès à la sonde. |
corde |
| Port |
Numéro de port à sonder. |
int (obligatoire) |
| schéma |
Le schéma. |
'http' 'https' |
ContainerPort (en anglais)
| Nom |
Descriptif |
Valeur |
| Port |
Numéro de port exposé dans le groupe de conteneurs. |
int (obligatoire) |
| protocole |
Protocole associé au port. |
« TCP » « UDP » |
Sonde de conteneur
| Nom |
Descriptif |
Valeur |
| 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 |
| periodSecondes |
Secondes de période. |
Int |
| successThreshold |
Seuil de réussite. |
Int |
| timeoutSecondes |
Délai d’expiration des secondes. |
Int |
Propriétés du conteneur
| Nom |
Descriptif |
Valeur |
| commander |
Commandes à exécuter dans l’instance de conteneur sous forme exec. |
chaîne de caractères[] |
| configMap |
Carte de configuration. |
ConfigMap |
| variables d'environnement |
Variables d’environnement à définir dans l’instance de conteneur. |
VariableEnvironnement[] |
| image |
Nom de l’image utilisée pour créer l’instance de conteneur. |
corde |
| vivacitéSonde |
La sonde liveness. |
ContainerProbe |
| Ports |
Ports exposés sur l’instance de conteneur. |
ConteneurPort[] |
| état de préparationSonde |
Sonde de préparation. |
ContainerProbe |
| ressources |
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
DeploymentExtensionSpecProperties
| Nom |
Descriptif |
Valeur |
| extensionType |
Type d’extension à ajouter. |
chaîne (obligatoire) |
| protectedSettings |
Paramètres protégés pour l’extension. |
quelconque |
| Paramètres |
Paramètres de l’extension. |
quelconque |
| Version |
Version de l’extension utilisée. |
chaîne (obligatoire) |
DnsConfiguration
| Nom |
Descriptif |
Valeur |
| nameServers |
Serveurs DNS pour le groupe de conteneurs. |
string[] (obligatoire) |
| Options |
Options DNS pour le groupe de conteneurs. |
corde |
| searchDomains |
Domaines de recherche DNS pour la recherche de nom d’hôte dans le groupe de conteneurs. |
corde |
Propriétés de chiffrement
| Nom |
Descriptif |
Valeur |
| identité |
Identité managée keyvault. |
corde |
| 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 |
Descriptif |
Valeur |
| 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. |
corde |
| valeur |
Valeur de la variable d’environnement. |
corde |
GitRepoVolume
| Nom |
Descriptif |
Valeur |
| répertoire |
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é. |
corde |
| dépôt |
URL du référentiel |
chaîne (obligatoire) |
| révision |
Valider le hachage pour la révision spécifiée. |
corde |
Ressource Gpu
| Nom |
Descriptif |
Valeur |
| compter |
Nombre de ressources GPU. |
int (obligatoire) |
| Sku |
Référence SKU de la ressource GPU. |
'K80' 'P100' 'V100' (obligatoire) |
| Nom |
Descriptif |
Valeur |
| nom |
Nom de l’en-tête. |
corde |
| valeur |
Valeur d’en-tête. |
corde |
IdentityAccessControl
| Nom |
Descriptif |
Valeur |
| accès |
Niveau d’accès de l’identité. |
'Tous' « Système » 'Utilisateur' |
| identité |
Identité. |
corde |
IdentityAcls
| Nom |
Descriptif |
Valeur |
| Acl |
Niveaux de contrôle d’accès pour chaque identité. |
IdentityAccessControl[] |
| defaultAccess |
Niveau d’accès par défaut. |
'Tous' « Système » 'Utilisateur' |
ImageRegistryCredential
| Nom |
Descriptif |
Valeur |
| identité |
Identité du registre privé. |
corde |
| identityUrl |
URL d’identité du registre privé. |
corde |
| mot de passe |
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é. |
corde |
| serveur |
Le serveur de Registre d’images Docker sans protocole tel que « http » et « https ». |
chaîne (obligatoire) |
| nom d’utilisateur |
Nom d’utilisateur du registre privé. |
corde |
InitContainerDefinition
InitContainerPropertiesDefinition
| Nom |
Descriptif |
Valeur |
| commander |
Commande à exécuter dans le conteneur init sous forme exec. |
chaîne de caractères[] |
| variables d'environnement |
Variables d’environnement à définir dans le conteneur init. |
VariableEnvironnement[] |
| image |
Image du conteneur init. |
corde |
| securityContext |
Propriétés de sécurité du conteneur. |
SecurityContextDefinition |
| volumeMontures |
Montages de volume disponibles pour le conteneur init. |
VolumeMount[] |
adresse IP
| Nom |
Descriptif |
Valeur |
| 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. |
corde |
| Ip |
Adresse IP exposée à l’Internet public. |
corde |
| 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é. |
« Privé » 'Public' (obligatoire) |
LogAnalytics
| Nom |
Descriptif |
Valeur |
| logType de journal |
Type de journal à utiliser. |
« ContainerInsights » 'ContainerInstanceLogs' |
| métadonnées |
Métadonnées pour Log Analytics. |
LogAnalyticsMetadata |
| ID d'espace de travail |
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é. (obligatoire) |
| workspaceResourceId |
ID de ressource de l’espace de travail pour Log Analytics |
corde
Contraintes: Valeur sensible. Passez en tant que paramètre sécurisé. |
Port
| Nom |
Descriptif |
Valeur |
| Port |
Numéro de port. |
int (obligatoire) |
| protocole |
Protocole associé au port. |
« TCP » « UDP » |
ResourceLimits
| Nom |
Descriptif |
Valeur |
| 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 |
Descriptif |
Valeur |
| 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 |
Descriptif |
Valeur |
| Limites |
Limites de ressources de cette instance de conteneur. |
ResourceLimits |
| Requêtes |
Demandes de ressources de cette instance de conteneur. |
ResourceRequests (obligatoire) |
Référence secrète
| Nom |
Descriptif |
Valeur |
| identité |
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) |
SecretReferenceVolume
SecretVolume
SecurityContextCapabilitiesDefinition
| Nom |
Descriptif |
Valeur |
| ajouter |
Fonctionnalités à ajouter au conteneur. |
chaîne de caractères[] |
| goutte |
Fonctionnalités à supprimer du conteneur. |
chaîne de caractères[] |
SecurityContextDefinition
| Nom |
Descriptif |
Valeur |
| allowPrivilegeEscalation |
Valeur booléenne indiquant si le processus init peut élever ses privilèges |
Bool |
| Capacités |
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 |
corde |
StandbyPoolProfileDefinition
| Nom |
Descriptif |
Valeur |
| 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 |
| pièce d'identité |
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} ». |
corde |
UserAssignedIdentities
Volume
| Nom |
Descriptif |
Valeur |
| azureFile |
Volume De fichiers Azure. |
AzureFileVolume |
| rép_vidage |
Volume de répertoire vide. |
quelconque |
| gitRepo |
Volume du dépôt Git. |
GitRepoVolume |
| nom |
Nom du volume. |
chaîne (obligatoire) |
| secret |
Volume de secrets. |
SecretVolume |
| secretReference |
Volume de référence de secret. |
SecretReferenceVolume |
Montage en volume
| Nom |
Descriptif |
Valeur |
| 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) |
| lecture seule |
Indicateur indiquant si le montage de volume est en lecture seule. |
Bool |
Exemples d’utilisation
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 |
Descriptif |
|
d’instance de conteneur |
Module de ressources AVM pour Container Instance |