Compartir a través de


Microsoft.ContainerInstance containerGroups 2025-09-01

Definición de recursos de Bicep

El tipo de recurso containerGroups se puede implementar con operaciones que tienen como destino:

Para obtener una lista de las propiedades modificadas en cada versión de API, consulte registro de cambios.

Formato de recurso

Para crear un recurso Microsoft.ContainerInstance/containerGroups, agregue el siguiente bicep a la plantilla.

resource symbolicname 'Microsoft.ContainerInstance/containerGroups@2025-09-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'
        }
        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'
  ]
}

Valores de propiedad

Microsoft.ContainerInstance/containerGroups

Nombre Description Importancia
identity Identidad del grupo de contenedores, si está configurada. containerGroupIdentity
location Ubicación del recurso. cuerda / cadena
nombre El nombre del recurso string (obligatorio)
Propiedades Propiedades del grupo de contenedores ContainerGroupPropertiesProperties (obligatorio)
tags Etiquetas de recursos Diccionario de nombres y valores de etiqueta. Consulte etiquetas de en plantillas
Zonas Zonas para el grupo de contenedores. string[]

AzureFileVolume

Nombre Description Importancia
Solo lectura Marca que indica si el recurso compartido de Azure File montado como volumen es de solo lectura. bool
shareName Nombre del recurso compartido de archivos de Azure que se va a montar como un volumen. string (obligatorio)
ClaveDeCuentaDeAlmacenamiento La clave de acceso de la cuenta de almacenamiento que se usa para acceder al recurso compartido de archivos de Azure. cuerda / cadena
storageAccountKeyReference Referencia a la clave de acceso de la cuenta de almacenamiento que se usa para acceder al recurso compartido de archivos de Azure. cuerda / cadena
storageAccountName Nombre de la cuenta de almacenamiento que contiene el recurso compartido de archivos de Azure. string (obligatorio)

ConfidentialComputeProperties

Nombre Description Importancia
ccePolicy Directiva de cumplimiento de proceso confidencial codificada en Base64 cuerda / cadena

ConfigMap (Mapa de configuración)

Nombre Description Importancia
keyValuePairs Diccionario de pares clave-valor en el mapa de configuración. ConfigMapKeyValuePairs

ConfigMapKeyValuePairs

Nombre Description Importancia

Contenedor

Nombre Description Importancia
nombre Nombre proporcionado por el usuario de la instancia de contenedor. string (obligatorio)
Propiedades Propiedades de la instancia de contenedor. ContainerProperties (obligatorio)

ContainerExec

Nombre Description Importancia
command Comandos que se van a ejecutar en el contenedor. string[]

ContainerGroupDiagnostics

Nombre Description Importancia
logAnalytics Información de log analytics del grupo de contenedores. LogAnalytics

ContainerGroupIdentity

Nombre Description Importancia
type Tipo de identidad que se usa para el grupo de contenedores. El tipo "SystemAssigned, UserAssigned" incluye una identidad creada implícitamente y un conjunto de identidades asignadas por el usuario. El tipo "None" quitará las identidades del grupo de contenedores. 'None'
'SystemAssigned'
'Asignado al sistema, asignado al usuario'
'UserAssigned'
userAssignedIdentities Lista de identidades de usuario asociadas al grupo de contenedores. containerGroupIdentityUserAssignedIdentities

ContainerGroupIdentityUserAssignedIdentities

Nombre Description Importancia

ContainerGroupProfileReferenceDefinition

Nombre Description Importancia
id Id. de referencia del perfil de grupo de contenedores. Este será un identificador de recurso de ARM con el formato : '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroupProfiles/{containerGroupProfileName}'. cuerda / cadena
revisión Revisión de referencia del perfil del grupo de contenedores. int

ContainerGroupPropertiesPropertiesProperties

Nombre Description Importancia
confidentialComputeProperties Propiedades del grupo de contenedores confidenciales ConfidentialComputeProperties
containerGroupProfile Propiedades de perfil de grupo de contenedores de referencia. containerGroupProfileReferenceDefinition
containers Contenedores dentro del grupo de contenedores. container[] (obligatorio)
diagnostics Información de diagnóstico de un grupo de contenedores. containerGroupDiagnostics
dnsConfig Información de configuración de DNS para un grupo de contenedores. DnsConfiguration
encryptionProperties Propiedades de cifrado de un grupo de contenedores. EncryptionProperties
extensions extensiones usadas por kubelet virtual DeploymentExtensionSpec[]
identityAcls Niveles de control de acceso de las identidades. IdentityAcls
imageRegistryCredentials Credenciales del Registro de imágenes a partir de las cuales se crea el grupo de contenedores. ImageRegistryCredential[]
initContainers Contenedores de inicialización de un grupo de contenedores. initContainerDefinition []
ipAddress Tipo de dirección IP del grupo de contenedores. IpAddress
osType Tipo de sistema operativo requerido por los contenedores del grupo de contenedores. 'Linux'
'Windows'
prioridad Prioridad del grupo de contenedores. 'Regular'
'Spot'
restartPolicy Reinicie la directiva para todos los contenedores del grupo de contenedores.
- Always reiniciar siempre
- OnFailure Reiniciar en caso de error
- Never no reiniciar nunca
'Always'
'Nunca'
'OnFailure'
secretReferences Referencias secretas a las que se hará referencia dentro del grupo de contenedores. Referencia Secreta[]
sku SKU de un grupo de contenedores. "Confidencial"
'Dedicado'
'NotSpecified'
'Estándar'
standbyPoolProfile Propiedades de perfil del grupo en espera de referencia. StandbyPoolProfileDefinition
subnetIds Identificadores de recursos de subred para un grupo de contenedores. containerGroupSubnetId[]
volumes Lista de volúmenes que pueden montar los contenedores de este grupo de contenedores. volumen[]

ContainerGroupSubnetId

Nombre Description Importancia
id Identificador de recurso de la red virtual y la subred. string (obligatorio)
nombre Nombre descriptivo de la subred. cuerda / cadena

ContenedorHttpGet

Nombre Description Importancia
httpHeaders Encabezados HTTP. HttpHeader []
camino Ruta de acceso al sondeo. cuerda / cadena
port Número de puerto que se va a sondear. int (obligatorio)
scheme El esquema. 'http'
'https'

ContainerPort (Puerto de contenedor)

Nombre Description Importancia
port Número de puerto expuesto en el grupo de contenedores. int (obligatorio)
protocol Protocolo asociado al puerto. 'TCP'
'UDP'

ContainerProbe

Nombre Description Importancia
exec Comando de ejecución que se va a sondear ContainerExec
failureThreshold Umbral de error. int
httpGet (en inglés) Configuración de Http Get que se va a sondear ContenedorHttpGet
initialDelaySeconds Segundos de retraso inicial. int
periodSeconds Segundos de período. int
successThreshold Umbral de éxito. int
timeoutSeconds Los segundos de tiempo de espera. int

PropiedadesDelContenedor

Nombre Description Importancia
command Los comandos que se van a ejecutar dentro de la instancia de contenedor en formato exec. string[]
configMap Mapa de configuración. ConfigMap
environmentVariables Variables de entorno que se van a establecer en la instancia de contenedor. Variable de entorno[]
image Nombre de la imagen utilizada para crear la instancia del contenedor. cuerda / cadena
livenessProbe Sondeo de ejecución. ContainerProbe
ports Puertos expuestos en la instancia de contenedor. ContainerPort[]
readinessProbe Sondeo de preparación. ContainerProbe
resources Requisitos de recursos de la instancia de contenedor. ResourceRequirements
securityContext Propiedades de seguridad del contenedor. SecurityContextDefinition
volumeMounts El volumen monta los montajes disponibles para la instancia de contenedor. VolumeMount[]

DeploymentExtensionSpec

Nombre Description Importancia
nombre Nombre de la extensión. string (obligatorio)
Propiedades Propiedades específicas de la extensión DeploymentExtensionSpecProperties

DeploymentExtensionSpecProperties

Nombre Description Importancia
extensionType Tipo de extensión que se va a agregar. string (obligatorio)
protectedSettings Configuración protegida para la extensión. cualquiera
settings Configuración de la extensión. cualquiera
version Versión de la extensión que se está usando. string (obligatorio)

DnsConfiguration

Nombre Description Importancia
nameServers Los servidores DNS para el grupo de contenedores. string[] (obligatorio)
options Opciones de DNS para el grupo de contenedores. cuerda / cadena
searchDomains Dominios de búsqueda DNS para la búsqueda de nombres de host en el grupo de contenedores. cuerda / cadena

Propiedades de Encriptación

Nombre Description Importancia
identity Identidad administrada de keyvault. cuerda / cadena
nombre de clave Nombre de clave de cifrado. string (obligatorio)
keyVersion Versión de la clave de cifrado. string (obligatorio)
vaultBaseUrl Dirección URL base de keyvault. string (obligatorio)

EnvironmentVariable

Nombre Description Importancia
nombre Nombre de la variable de entorno. string (obligatorio)
secureValue Valor de la variable de entorno segura. string

Restricciones:
Valor confidencial. Pase como parámetro seguro.
secureValueReference Referencia de la variable de entorno segura. cuerda / cadena
value Valor de la variable de entorno. cuerda / cadena

GitRepoVolume

Nombre Description Importancia
directory Nombre del directorio de destino. No debe contener ni comenzar con '..'. Si se proporciona '.', el directorio de volúmenes será el repositorio git. De lo contrario, si se especifica, el volumen contendrá el repositorio git en el subdirectorio con el nombre especificado. cuerda / cadena
repositorio Dirección URL del repositorio string (obligatorio)
revisión Hash de confirmación para la revisión especificada. cuerda / cadena

GpuResource

Nombre Description Importancia
count Recuento del recurso de GPU. int (obligatorio)
sku SKU del recurso de GPU. 'K80'
'P100'
'V100' (obligatorio)

HttpHeader

Nombre Description Importancia
nombre Nombre del encabezado. cuerda / cadena
value Valor de encabezado. cuerda / cadena

IdentityAccessControl

Nombre Description Importancia
acceso Nivel de acceso de la identidad. "Todo"
'System'
"Usuario"
identity Una identidad. cuerda / cadena

IdentityAcls

Nombre Description Importancia
Acl Niveles de control de acceso para cada identidad. IdentityAccessControl[]
defaultAccess Nivel de acceso predeterminado. "Todo"
'System'
"Usuario"

ImageRegistryCredential

Nombre Description Importancia
identity Identidad del registro privado. cuerda / cadena
identityUrl Dirección URL de identidad del registro privado. cuerda / cadena
contraseña Contraseña del registro privado. string

Restricciones:
Valor confidencial. Pase como parámetro seguro.
passwordReference Referencia de la contraseña del Registro privado. cuerda / cadena
server El servidor del Registro de imágenes de Docker sin un protocolo como "http" y "https". string (obligatorio)
nombre de usuario Nombre de usuario del registro privado. cuerda / cadena

InitContainerDefinition

Nombre Description Importancia
nombre Nombre del contenedor de inicialización. string (obligatorio)
Propiedades Propiedades del contenedor de inicialización. initContainerPropertiesDefinition (obligatorio)

InitContainerPropertiesDefinition

Nombre Description Importancia
command Comando que se va a ejecutar en el contenedor de inicialización en formato exec. string[]
environmentVariables Variables de entorno que se van a establecer en el contenedor de inicialización. Variable de entorno[]
image Imagen del contenedor de inicialización. cuerda / cadena
securityContext Propiedades de seguridad del contenedor. SecurityContextDefinition
volumeMounts El volumen monta los montajes disponibles para el contenedor de inicialización. VolumeMount[]

Dirección IP

Nombre Description Importancia
autoGeneratedDomainNameLabelScope Valor que representa la enumeración de seguridad. El valor "No seguro" es el valor predeterminado si no está seleccionado y significa que la etiqueta de nombre de dominio del objeto no está protegida con la adquisición del subdominio. El valor "TenantReuse" es el valor predeterminado si está seleccionado y significa que la etiqueta de nombre de dominio del objeto se puede reutilizar en el mismo inquilino. El valor "SubscriptionReuse" significa que la etiqueta de nombre de dominio del objeto se puede reutilizar dentro de la misma suscripción. El valor "ResourceGroupReuse" significa que la etiqueta de nombre de dominio del objeto se puede reutilizar dentro del mismo grupo de recursos. El valor "NoReuse" significa que la etiqueta de nombre de dominio del objeto no se puede reutilizar dentro del mismo grupo de recursos, suscripción o inquilino. 'Noreuse'
'ResourceGroupReuse'
'Reutilización de suscripciones'
'Reutilización de inquilinos'
"No seguro"
dnsNameLabel Etiqueta de nombre DNS para la dirección IP. cuerda / cadena
IP Dirección IP expuesta a la red pública de Internet. cuerda / cadena
ports Lista de puertos expuestos en el grupo de contenedores. puerto[] (obligatorio)
type Especifica si la dirección IP se expone a la red virtual pública de Internet o privada. 'Private'
'Public' (obligatorio)

Análisis de registros

Nombre Description Importancia
Tipo de registro Tipo de registro que se va a usar. "ContainerInsights"
'ContainerInstanceLogs'
metadata Metadatos de Log Analytics. LogAnalyticsMetadata
workspaceId Identificador del área de trabajo para Log Analytics string (obligatorio)
workspaceKey La clave del área de trabajo para Log Analytics string

Restricciones:
Valor confidencial. Pase como parámetro seguro. (required)
IdentificadorDeRecursoDelEspacioDeTrabajo Identificador de recurso del área de trabajo para Log Analytics string

Restricciones:
Valor confidencial. Pase como parámetro seguro.

LogAnalyticsMetadata

Nombre Description Importancia

Puerto

Nombre Description Importancia
port Número de puerto. int (obligatorio)
protocol Protocolo asociado al puerto. 'TCP'
'UDP'

ResourceLimits

Nombre Description Importancia
cpu Límite de CPU de esta instancia de contenedor. int
gpu Límite de GPU de esta instancia de contenedor. gpuResource de
memoryInGB Límite de memoria en GB de esta instancia de contenedor. int

ResourceRequests

Nombre Description Importancia
cpu Solicitud de CPU de esta instancia de contenedor. int (obligatorio)
gpu Solicitud de GPU de esta instancia de contenedor. gpuResource de
memoryInGB Solicitud de memoria en GB de esta instancia de contenedor. int (obligatorio)

ResourceRequirements

Nombre Description Importancia
limits Límites de recursos de esta instancia de contenedor. ResourceLimits
solicitudes Solicitudes de recursos de esta instancia de contenedor. ResourceRequests (obligatorio)

ResourceTags (Etiquetas de recurso)

Nombre Description Importancia

Referencia secreta

Nombre Description Importancia
identity Identificador de recurso de ARM de la identidad administrada que tiene acceso al secreto en el almacén de claves. string (obligatorio)
nombre Identificador de la referencia secreta string (obligatorio)
secretReferenceUri Identificador URI del secreto en el almacén de claves string (obligatorio)

Volumen de referencia secreta

Nombre Description Importancia

Volumen secreto

Nombre Description Importancia

SecurityContextCapabilitiesDefinition

Nombre Description Importancia
add Funcionalidades que se van a agregar al contenedor. string[]
anular Funcionalidades que se van a quitar del contenedor. string[]

SecurityContextDefinition

Nombre Description Importancia
allowPrivilegeEscalation Valor booleano que indica si el proceso de inicialización puede elevar sus privilegios bool
capabilities Funcionalidades que se van a agregar o quitar de un contenedor. SecurityContextCapabilitiesDefinition
privilegiado Marca para determinar si los permisos de contenedor se elevan a Privileged. bool
runAsGroup Establece el GID de usuario para el contenedor. int
runAsUser Establece el UID de usuario del contenedor. int
seccompProfile una cadena codificada en base64 que contiene el contenido del JSON en el perfil de seccomp cuerda / cadena

StandbyPoolProfileDefinition

Nombre Description Importancia
failContainerGroupCreateOnReuseFailure Marca para determinar si ACI debe producir un error en la solicitud de creación si el grupo de contenedores no se puede obtener del grupo en espera. bool
id Id. de referencia del perfil de grupo en espera. Este será un identificador de recurso de ARM con el formato : '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StandbyPool/standbyContainerGroupPools/{standbyPoolName}'. cuerda / cadena

UserAssignedIdentities

Nombre Description Importancia

Volumen

Nombre Description Importancia
azureFile El volumen de Azure File. AzureFileVolume
emptyDir Volumen de directorio vacío. cualquiera
gitRepo El volumen del repositorio de Git. gitRepoVolume
nombre Nombre del volumen. string (obligatorio)
secret Volumen secreto. Volumen secreto
secretReference Volumen de referencia secreta. Volumen de referencia secreta

VolumeMount

Nombre Description Importancia
mountPath Ruta de acceso dentro del contenedor donde se debe montar el volumen. No debe contener dos puntos (:). string (obligatorio)
nombre Nombre del montaje del volumen. string (obligatorio)
Solo lectura Marca que indica si el montaje del volumen es de solo lectura. bool

Ejemplos de uso

Módulos comprobados de Azure

Los siguientes módulos comprobados de Azure se pueden usar para implementar este tipo de recurso.

Módulo Description
Container Instance Módulo de recursos de AVM para la instancia de contenedor

Ejemplos de inicio rápido de Azure

Los siguientes plantillas de inicio rápido de Azure contienen ejemplos de Bicep para implementar este tipo de recurso.

Archivo de Bicep Description
Azure Container Instances: BC con SQL Server e IIS Implemente un único contenedor de Windows con un entorno de Microsoft Dynamics 365 Business Central totalmente destacado en Azure Container Instances.
Azure Container Instances: contenedor con secretos Implemente un contenedor de Linux que tenga un volumen secreto mediante Azure Container Instances.
Azure Container Instances: contenedor de Linux con ip pública Implemente un único contenedor de Linux accesible a través de una dirección IP pública mediante Azure Container Instances.
Azure Container Instances: de red virtual Implemente una instancia de contenedor en una red virtual de Azure.
Crear un sitio de WordPress Esta plantilla crea un sitio de WordPress en Container Instance
Crear un servidor SFTP a petición con de almacenamiento persistente Esta plantilla muestra un servidor SFTP a petición mediante una instancia de Azure Container Instance (ACI).
crear Application Gateway con certificados Esta plantilla muestra cómo generar certificados autofirmados de Key Vault y, a continuación, hacer referencia desde Application Gateway.
Front Door Standard/Premium con Azure Container Instances Esta plantilla crea una instancia de Front Door Standard/Premium con un grupo de contenedores.
Front Door con instancias de contenedor y Application Gateway Esta plantilla crea una instancia de Front Door Standard/Premium con un grupo de contenedores y Application Gateway.
grupo de disponibilidad de SQL Server en AKS Esto crea un nuevo clúster de AKS y, a continuación, implementa grupos de disponibilidad de SQL Server en él mediante un paquete CNAB implementado mediante Duffle y ACI.

Definición de recursos de plantilla de ARM

El tipo de recurso containerGroups se puede implementar con operaciones que tienen como destino:

Para obtener una lista de las propiedades modificadas en cada versión de API, consulte registro de cambios.

Formato de recurso

Para crear un recurso Microsoft.ContainerInstance/containerGroups, agregue el siguiente JSON a la plantilla.

{
  "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" ]
}

Valores de propiedad

Microsoft.ContainerInstance/containerGroups

Nombre Description Importancia
apiVersion La versión de api '2025-09-01'
identity Identidad del grupo de contenedores, si está configurada. containerGroupIdentity
location Ubicación del recurso. cuerda / cadena
nombre El nombre del recurso string (obligatorio)
Propiedades Propiedades del grupo de contenedores ContainerGroupPropertiesProperties (obligatorio)
tags Etiquetas de recursos Diccionario de nombres y valores de etiqueta. Consulte etiquetas de en plantillas
type El tipo de recurso 'Microsoft.ContainerInstance/containerGroups'
Zonas Zonas para el grupo de contenedores. string[]

AzureFileVolume

Nombre Description Importancia
Solo lectura Marca que indica si el recurso compartido de Azure File montado como volumen es de solo lectura. bool
shareName Nombre del recurso compartido de archivos de Azure que se va a montar como un volumen. string (obligatorio)
ClaveDeCuentaDeAlmacenamiento La clave de acceso de la cuenta de almacenamiento que se usa para acceder al recurso compartido de archivos de Azure. cuerda / cadena
storageAccountKeyReference Referencia a la clave de acceso de la cuenta de almacenamiento que se usa para acceder al recurso compartido de archivos de Azure. cuerda / cadena
storageAccountName Nombre de la cuenta de almacenamiento que contiene el recurso compartido de archivos de Azure. string (obligatorio)

ConfidentialComputeProperties

Nombre Description Importancia
ccePolicy Directiva de cumplimiento de proceso confidencial codificada en Base64 cuerda / cadena

ConfigMap (Mapa de configuración)

Nombre Description Importancia
keyValuePairs Diccionario de pares clave-valor en el mapa de configuración. ConfigMapKeyValuePairs

ConfigMapKeyValuePairs

Nombre Description Importancia

Contenedor

Nombre Description Importancia
nombre Nombre proporcionado por el usuario de la instancia de contenedor. string (obligatorio)
Propiedades Propiedades de la instancia de contenedor. ContainerProperties (obligatorio)

ContainerExec

Nombre Description Importancia
command Comandos que se van a ejecutar en el contenedor. string[]

ContainerGroupDiagnostics

Nombre Description Importancia
logAnalytics Información de log analytics del grupo de contenedores. LogAnalytics

ContainerGroupIdentity

Nombre Description Importancia
type Tipo de identidad que se usa para el grupo de contenedores. El tipo "SystemAssigned, UserAssigned" incluye una identidad creada implícitamente y un conjunto de identidades asignadas por el usuario. El tipo "None" quitará las identidades del grupo de contenedores. 'None'
'SystemAssigned'
'Asignado al sistema, asignado al usuario'
'UserAssigned'
userAssignedIdentities Lista de identidades de usuario asociadas al grupo de contenedores. containerGroupIdentityUserAssignedIdentities

ContainerGroupIdentityUserAssignedIdentities

Nombre Description Importancia

ContainerGroupProfileReferenceDefinition

Nombre Description Importancia
id Id. de referencia del perfil de grupo de contenedores. Este será un identificador de recurso de ARM con el formato : '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroupProfiles/{containerGroupProfileName}'. cuerda / cadena
revisión Revisión de referencia del perfil del grupo de contenedores. int

ContainerGroupPropertiesPropertiesProperties

Nombre Description Importancia
confidentialComputeProperties Propiedades del grupo de contenedores confidenciales ConfidentialComputeProperties
containerGroupProfile Propiedades de perfil de grupo de contenedores de referencia. containerGroupProfileReferenceDefinition
containers Contenedores dentro del grupo de contenedores. container[] (obligatorio)
diagnostics Información de diagnóstico de un grupo de contenedores. containerGroupDiagnostics
dnsConfig Información de configuración de DNS para un grupo de contenedores. DnsConfiguration
encryptionProperties Propiedades de cifrado de un grupo de contenedores. EncryptionProperties
extensions extensiones usadas por kubelet virtual DeploymentExtensionSpec[]
identityAcls Niveles de control de acceso de las identidades. IdentityAcls
imageRegistryCredentials Credenciales del Registro de imágenes a partir de las cuales se crea el grupo de contenedores. ImageRegistryCredential[]
initContainers Contenedores de inicialización de un grupo de contenedores. initContainerDefinition []
ipAddress Tipo de dirección IP del grupo de contenedores. IpAddress
osType Tipo de sistema operativo requerido por los contenedores del grupo de contenedores. 'Linux'
'Windows'
prioridad Prioridad del grupo de contenedores. 'Regular'
'Spot'
restartPolicy Reinicie la directiva para todos los contenedores del grupo de contenedores.
- Always reiniciar siempre
- OnFailure Reiniciar en caso de error
- Never no reiniciar nunca
'Always'
'Nunca'
'OnFailure'
secretReferences Referencias secretas a las que se hará referencia dentro del grupo de contenedores. Referencia Secreta[]
sku SKU de un grupo de contenedores. "Confidencial"
'Dedicado'
'NotSpecified'
'Estándar'
standbyPoolProfile Propiedades de perfil del grupo en espera de referencia. StandbyPoolProfileDefinition
subnetIds Identificadores de recursos de subred para un grupo de contenedores. containerGroupSubnetId[]
volumes Lista de volúmenes que pueden montar los contenedores de este grupo de contenedores. volumen[]

ContainerGroupSubnetId

Nombre Description Importancia
id Identificador de recurso de la red virtual y la subred. string (obligatorio)
nombre Nombre descriptivo de la subred. cuerda / cadena

ContenedorHttpGet

Nombre Description Importancia
httpHeaders Encabezados HTTP. HttpHeader []
camino Ruta de acceso al sondeo. cuerda / cadena
port Número de puerto que se va a sondear. int (obligatorio)
scheme El esquema. 'http'
'https'

ContainerPort (Puerto de contenedor)

Nombre Description Importancia
port Número de puerto expuesto en el grupo de contenedores. int (obligatorio)
protocol Protocolo asociado al puerto. 'TCP'
'UDP'

ContainerProbe

Nombre Description Importancia
exec Comando de ejecución que se va a sondear ContainerExec
failureThreshold Umbral de error. int
httpGet (en inglés) Configuración de Http Get que se va a sondear ContenedorHttpGet
initialDelaySeconds Segundos de retraso inicial. int
periodSeconds Segundos de período. int
successThreshold Umbral de éxito. int
timeoutSeconds Los segundos de tiempo de espera. int

PropiedadesDelContenedor

Nombre Description Importancia
command Los comandos que se van a ejecutar dentro de la instancia de contenedor en formato exec. string[]
configMap Mapa de configuración. ConfigMap
environmentVariables Variables de entorno que se van a establecer en la instancia de contenedor. Variable de entorno[]
image Nombre de la imagen utilizada para crear la instancia del contenedor. cuerda / cadena
livenessProbe Sondeo de ejecución. ContainerProbe
ports Puertos expuestos en la instancia de contenedor. ContainerPort[]
readinessProbe Sondeo de preparación. ContainerProbe
resources Requisitos de recursos de la instancia de contenedor. ResourceRequirements
securityContext Propiedades de seguridad del contenedor. SecurityContextDefinition
volumeMounts El volumen monta los montajes disponibles para la instancia de contenedor. VolumeMount[]

DeploymentExtensionSpec

Nombre Description Importancia
nombre Nombre de la extensión. string (obligatorio)
Propiedades Propiedades específicas de la extensión DeploymentExtensionSpecProperties

DeploymentExtensionSpecProperties

Nombre Description Importancia
extensionType Tipo de extensión que se va a agregar. string (obligatorio)
protectedSettings Configuración protegida para la extensión. cualquiera
settings Configuración de la extensión. cualquiera
version Versión de la extensión que se está usando. string (obligatorio)

DnsConfiguration

Nombre Description Importancia
nameServers Los servidores DNS para el grupo de contenedores. string[] (obligatorio)
options Opciones de DNS para el grupo de contenedores. cuerda / cadena
searchDomains Dominios de búsqueda DNS para la búsqueda de nombres de host en el grupo de contenedores. cuerda / cadena

Propiedades de Encriptación

Nombre Description Importancia
identity Identidad administrada de keyvault. cuerda / cadena
nombre de clave Nombre de clave de cifrado. string (obligatorio)
keyVersion Versión de la clave de cifrado. string (obligatorio)
vaultBaseUrl Dirección URL base de keyvault. string (obligatorio)

EnvironmentVariable

Nombre Description Importancia
nombre Nombre de la variable de entorno. string (obligatorio)
secureValue Valor de la variable de entorno segura. string

Restricciones:
Valor confidencial. Pase como parámetro seguro.
secureValueReference Referencia de la variable de entorno segura. cuerda / cadena
value Valor de la variable de entorno. cuerda / cadena

GitRepoVolume

Nombre Description Importancia
directory Nombre del directorio de destino. No debe contener ni comenzar con '..'. Si se proporciona '.', el directorio de volúmenes será el repositorio git. De lo contrario, si se especifica, el volumen contendrá el repositorio git en el subdirectorio con el nombre especificado. cuerda / cadena
repositorio Dirección URL del repositorio string (obligatorio)
revisión Hash de confirmación para la revisión especificada. cuerda / cadena

GpuResource

Nombre Description Importancia
count Recuento del recurso de GPU. int (obligatorio)
sku SKU del recurso de GPU. 'K80'
'P100'
'V100' (obligatorio)

HttpHeader

Nombre Description Importancia
nombre Nombre del encabezado. cuerda / cadena
value Valor de encabezado. cuerda / cadena

IdentityAccessControl

Nombre Description Importancia
acceso Nivel de acceso de la identidad. "Todo"
'System'
"Usuario"
identity Una identidad. cuerda / cadena

IdentityAcls

Nombre Description Importancia
Acl Niveles de control de acceso para cada identidad. IdentityAccessControl[]
defaultAccess Nivel de acceso predeterminado. "Todo"
'System'
"Usuario"

ImageRegistryCredential

Nombre Description Importancia
identity Identidad del registro privado. cuerda / cadena
identityUrl Dirección URL de identidad del registro privado. cuerda / cadena
contraseña Contraseña del registro privado. string

Restricciones:
Valor confidencial. Pase como parámetro seguro.
passwordReference Referencia de la contraseña del Registro privado. cuerda / cadena
server El servidor del Registro de imágenes de Docker sin un protocolo como "http" y "https". string (obligatorio)
nombre de usuario Nombre de usuario del registro privado. cuerda / cadena

InitContainerDefinition

Nombre Description Importancia
nombre Nombre del contenedor de inicialización. string (obligatorio)
Propiedades Propiedades del contenedor de inicialización. initContainerPropertiesDefinition (obligatorio)

InitContainerPropertiesDefinition

Nombre Description Importancia
command Comando que se va a ejecutar en el contenedor de inicialización en formato exec. string[]
environmentVariables Variables de entorno que se van a establecer en el contenedor de inicialización. Variable de entorno[]
image Imagen del contenedor de inicialización. cuerda / cadena
securityContext Propiedades de seguridad del contenedor. SecurityContextDefinition
volumeMounts El volumen monta los montajes disponibles para el contenedor de inicialización. VolumeMount[]

Dirección IP

Nombre Description Importancia
autoGeneratedDomainNameLabelScope Valor que representa la enumeración de seguridad. El valor "No seguro" es el valor predeterminado si no está seleccionado y significa que la etiqueta de nombre de dominio del objeto no está protegida con la adquisición del subdominio. El valor "TenantReuse" es el valor predeterminado si está seleccionado y significa que la etiqueta de nombre de dominio del objeto se puede reutilizar en el mismo inquilino. El valor "SubscriptionReuse" significa que la etiqueta de nombre de dominio del objeto se puede reutilizar dentro de la misma suscripción. El valor "ResourceGroupReuse" significa que la etiqueta de nombre de dominio del objeto se puede reutilizar dentro del mismo grupo de recursos. El valor "NoReuse" significa que la etiqueta de nombre de dominio del objeto no se puede reutilizar dentro del mismo grupo de recursos, suscripción o inquilino. 'Noreuse'
'ResourceGroupReuse'
'Reutilización de suscripciones'
'Reutilización de inquilinos'
"No seguro"
dnsNameLabel Etiqueta de nombre DNS para la dirección IP. cuerda / cadena
IP Dirección IP expuesta a la red pública de Internet. cuerda / cadena
ports Lista de puertos expuestos en el grupo de contenedores. puerto[] (obligatorio)
type Especifica si la dirección IP se expone a la red virtual pública de Internet o privada. 'Private'
'Public' (obligatorio)

Análisis de registros

Nombre Description Importancia
Tipo de registro Tipo de registro que se va a usar. "ContainerInsights"
'ContainerInstanceLogs'
metadata Metadatos de Log Analytics. LogAnalyticsMetadata
workspaceId Identificador del área de trabajo para Log Analytics string (obligatorio)
workspaceKey La clave del área de trabajo para Log Analytics string

Restricciones:
Valor confidencial. Pase como parámetro seguro. (required)
IdentificadorDeRecursoDelEspacioDeTrabajo Identificador de recurso del área de trabajo para Log Analytics string

Restricciones:
Valor confidencial. Pase como parámetro seguro.

LogAnalyticsMetadata

Nombre Description Importancia

Puerto

Nombre Description Importancia
port Número de puerto. int (obligatorio)
protocol Protocolo asociado al puerto. 'TCP'
'UDP'

ResourceLimits

Nombre Description Importancia
cpu Límite de CPU de esta instancia de contenedor. int
gpu Límite de GPU de esta instancia de contenedor. gpuResource de
memoryInGB Límite de memoria en GB de esta instancia de contenedor. int

ResourceRequests

Nombre Description Importancia
cpu Solicitud de CPU de esta instancia de contenedor. int (obligatorio)
gpu Solicitud de GPU de esta instancia de contenedor. gpuResource de
memoryInGB Solicitud de memoria en GB de esta instancia de contenedor. int (obligatorio)

ResourceRequirements

Nombre Description Importancia
limits Límites de recursos de esta instancia de contenedor. ResourceLimits
solicitudes Solicitudes de recursos de esta instancia de contenedor. ResourceRequests (obligatorio)

ResourceTags (Etiquetas de recurso)

Nombre Description Importancia

Referencia secreta

Nombre Description Importancia
identity Identificador de recurso de ARM de la identidad administrada que tiene acceso al secreto en el almacén de claves. string (obligatorio)
nombre Identificador de la referencia secreta string (obligatorio)
secretReferenceUri Identificador URI del secreto en el almacén de claves string (obligatorio)

Volumen de referencia secreta

Nombre Description Importancia

Volumen secreto

Nombre Description Importancia

SecurityContextCapabilitiesDefinition

Nombre Description Importancia
add Funcionalidades que se van a agregar al contenedor. string[]
anular Funcionalidades que se van a quitar del contenedor. string[]

SecurityContextDefinition

Nombre Description Importancia
allowPrivilegeEscalation Valor booleano que indica si el proceso de inicialización puede elevar sus privilegios bool
capabilities Funcionalidades que se van a agregar o quitar de un contenedor. SecurityContextCapabilitiesDefinition
privilegiado Marca para determinar si los permisos de contenedor se elevan a Privileged. bool
runAsGroup Establece el GID de usuario para el contenedor. int
runAsUser Establece el UID de usuario del contenedor. int
seccompProfile una cadena codificada en base64 que contiene el contenido del JSON en el perfil de seccomp cuerda / cadena

StandbyPoolProfileDefinition

Nombre Description Importancia
failContainerGroupCreateOnReuseFailure Marca para determinar si ACI debe producir un error en la solicitud de creación si el grupo de contenedores no se puede obtener del grupo en espera. bool
id Id. de referencia del perfil de grupo en espera. Este será un identificador de recurso de ARM con el formato : '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StandbyPool/standbyContainerGroupPools/{standbyPoolName}'. cuerda / cadena

UserAssignedIdentities

Nombre Description Importancia

Volumen

Nombre Description Importancia
azureFile El volumen de Azure File. AzureFileVolume
emptyDir Volumen de directorio vacío. cualquiera
gitRepo El volumen del repositorio de Git. gitRepoVolume
nombre Nombre del volumen. string (obligatorio)
secret Volumen secreto. Volumen secreto
secretReference Volumen de referencia secreta. Volumen de referencia secreta

VolumeMount

Nombre Description Importancia
mountPath Ruta de acceso dentro del contenedor donde se debe montar el volumen. No debe contener dos puntos (:). string (obligatorio)
nombre Nombre del montaje del volumen. string (obligatorio)
Solo lectura Marca que indica si el montaje del volumen es de solo lectura. bool

Ejemplos de uso

Plantillas de inicio rápido de Azure

Los siguientes plantillas de inicio rápido de Azure implementar este tipo de recurso.

Template Description
Azure Container Instances: BC con SQL Server e IIS

Implementación en Azure
Implemente un único contenedor de Windows con un entorno de Microsoft Dynamics 365 Business Central totalmente destacado en Azure Container Instances.
Azure Container Instances: contenedor con de sondeo de estado

Implementación en Azure
Implemente un contenedor de Linux que tenga un sondeo de estado mediante Azure Container Instances.
Azure Container Instances: contenedor con secretos

Implementación en Azure
Implemente un contenedor de Linux que tenga un volumen secreto mediante Azure Container Instances.
Azure Container Instances: contenedor con envVar seguro

Implementación en Azure
Implemente un contenedor de Linux que tenga una variable de entorno segura mediante Azure Container Instances.
Azure Container Instances: contenedor de Linux con emptyDir

Implementación en Azure
Implemente dos contenedores de Linux que comparten un volumen emptyDir mediante Azure Container Instances.
Azure Container Instances: contenedor linux con gitRepo

Implementación en Azure
Implemente un contenedor de Linux que use un volumen gitRepo mediante Azure Container Instances.
Azure Container Instances: contenedor de Linux con ip pública

Implementación en Azure
Implemente un único contenedor de Linux accesible a través de una dirección IP pública mediante Azure Container Instances.
Azure Container Instances: de red virtual

Implementación en Azure
Implemente una instancia de contenedor en una red virtual de Azure.
Crear un recurso compartido de archivos de cuenta de almacenamiento a través de contenedores

Implementación en Azure
Esta plantilla crea una cuenta de almacenamiento y un recurso compartido de archivos a través de azure-cli en una instancia de contenedor.
Crear un sitio de WordPress

Implementación en Azure
Esta plantilla crea un sitio de WordPress en Container Instance
Crear un sitio de WordPress en una red virtual

Implementación en Azure
Esta plantilla crea un sitio de WordPress en Container Instance en una red virtual. Y genera un FQDN de sitio público que podría acceder al sitio de WordPress.
Crear un servidor SFTP a petición con de almacenamiento persistente

Implementación en Azure
Esta plantilla muestra un servidor SFTP a petición mediante una instancia de Azure Container Instance (ACI).
crear Application Gateway con certificados

Implementación en Azure
Esta plantilla muestra cómo generar certificados autofirmados de Key Vault y, a continuación, hacer referencia desde Application Gateway.
Front Door Standard/Premium con Azure Container Instances

Implementación en Azure
Esta plantilla crea una instancia de Front Door Standard/Premium con un grupo de contenedores.
Front Door con instancias de contenedor y Application Gateway

Implementación en Azure
Esta plantilla crea una instancia de Front Door Standard/Premium con un grupo de contenedores y Application Gateway.
servidor SFTP a petición mediante una cuenta de almacenamiento existente

Implementación en Azure
Esta plantilla muestra un servidor SFTP a petición mediante una instancia de Azure Container Instance (ACI).
grupo de disponibilidad de SQL Server en AKS

Implementación en Azure
Esto crea un nuevo clúster de AKS y, a continuación, implementa grupos de disponibilidad de SQL Server en él mediante un paquete CNAB implementado mediante Duffle y ACI.
contenedor UDP en ACI

Implementación en Azure
Estas plantillas crean un recurso de ACI y exponen un contenedor a través de UDP.

Definición de recursos de Terraform (proveedor AzAPI)

El tipo de recurso containerGroups se puede implementar con operaciones que tienen como destino:

  • Grupos de recursos

Para obtener una lista de las propiedades modificadas en cada versión de API, consulte registro de cambios.

Formato de recurso

Para crear un recurso Microsoft.ContainerInstance/containerGroups, agregue el siguiente terraform a la plantilla.

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"
    ]
  }
}

Valores de propiedad

Microsoft.ContainerInstance/containerGroups

Nombre Description Importancia
identity Identidad del grupo de contenedores, si está configurada. containerGroupIdentity
location Ubicación del recurso. cuerda / cadena
nombre El nombre del recurso string (obligatorio)
Propiedades Propiedades del grupo de contenedores ContainerGroupPropertiesProperties (obligatorio)
tags Etiquetas de recursos Diccionario de nombres y valores de etiqueta.
type El tipo de recurso "Microsoft.ContainerInstance/containerGroups@2025-09-01"
Zonas Zonas para el grupo de contenedores. string[]

AzureFileVolume

Nombre Description Importancia
Solo lectura Marca que indica si el recurso compartido de Azure File montado como volumen es de solo lectura. bool
shareName Nombre del recurso compartido de archivos de Azure que se va a montar como un volumen. string (obligatorio)
ClaveDeCuentaDeAlmacenamiento La clave de acceso de la cuenta de almacenamiento que se usa para acceder al recurso compartido de archivos de Azure. cuerda / cadena
storageAccountKeyReference Referencia a la clave de acceso de la cuenta de almacenamiento que se usa para acceder al recurso compartido de archivos de Azure. cuerda / cadena
storageAccountName Nombre de la cuenta de almacenamiento que contiene el recurso compartido de archivos de Azure. string (obligatorio)

ConfidentialComputeProperties

Nombre Description Importancia
ccePolicy Directiva de cumplimiento de proceso confidencial codificada en Base64 cuerda / cadena

ConfigMap (Mapa de configuración)

Nombre Description Importancia
keyValuePairs Diccionario de pares clave-valor en el mapa de configuración. ConfigMapKeyValuePairs

ConfigMapKeyValuePairs

Nombre Description Importancia

Contenedor

Nombre Description Importancia
nombre Nombre proporcionado por el usuario de la instancia de contenedor. string (obligatorio)
Propiedades Propiedades de la instancia de contenedor. ContainerProperties (obligatorio)

ContainerExec

Nombre Description Importancia
command Comandos que se van a ejecutar en el contenedor. string[]

ContainerGroupDiagnostics

Nombre Description Importancia
logAnalytics Información de log analytics del grupo de contenedores. LogAnalytics

ContainerGroupIdentity

Nombre Description Importancia
type Tipo de identidad que se usa para el grupo de contenedores. El tipo "SystemAssigned, UserAssigned" incluye una identidad creada implícitamente y un conjunto de identidades asignadas por el usuario. El tipo "None" quitará las identidades del grupo de contenedores. 'None'
'SystemAssigned'
'Asignado al sistema, asignado al usuario'
'UserAssigned'
userAssignedIdentities Lista de identidades de usuario asociadas al grupo de contenedores. containerGroupIdentityUserAssignedIdentities

ContainerGroupIdentityUserAssignedIdentities

Nombre Description Importancia

ContainerGroupProfileReferenceDefinition

Nombre Description Importancia
id Id. de referencia del perfil de grupo de contenedores. Este será un identificador de recurso de ARM con el formato : '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroupProfiles/{containerGroupProfileName}'. cuerda / cadena
revisión Revisión de referencia del perfil del grupo de contenedores. int

ContainerGroupPropertiesPropertiesProperties

Nombre Description Importancia
confidentialComputeProperties Propiedades del grupo de contenedores confidenciales ConfidentialComputeProperties
containerGroupProfile Propiedades de perfil de grupo de contenedores de referencia. containerGroupProfileReferenceDefinition
containers Contenedores dentro del grupo de contenedores. container[] (obligatorio)
diagnostics Información de diagnóstico de un grupo de contenedores. containerGroupDiagnostics
dnsConfig Información de configuración de DNS para un grupo de contenedores. DnsConfiguration
encryptionProperties Propiedades de cifrado de un grupo de contenedores. EncryptionProperties
extensions extensiones usadas por kubelet virtual DeploymentExtensionSpec[]
identityAcls Niveles de control de acceso de las identidades. IdentityAcls
imageRegistryCredentials Credenciales del Registro de imágenes a partir de las cuales se crea el grupo de contenedores. ImageRegistryCredential[]
initContainers Contenedores de inicialización de un grupo de contenedores. initContainerDefinition []
ipAddress Tipo de dirección IP del grupo de contenedores. IpAddress
osType Tipo de sistema operativo requerido por los contenedores del grupo de contenedores. 'Linux'
'Windows'
prioridad Prioridad del grupo de contenedores. 'Regular'
'Spot'
restartPolicy Reinicie la directiva para todos los contenedores del grupo de contenedores.
- Always reiniciar siempre
- OnFailure Reiniciar en caso de error
- Never no reiniciar nunca
'Always'
'Nunca'
'OnFailure'
secretReferences Referencias secretas a las que se hará referencia dentro del grupo de contenedores. Referencia Secreta[]
sku SKU de un grupo de contenedores. "Confidencial"
'Dedicado'
'NotSpecified'
'Estándar'
standbyPoolProfile Propiedades de perfil del grupo en espera de referencia. StandbyPoolProfileDefinition
subnetIds Identificadores de recursos de subred para un grupo de contenedores. containerGroupSubnetId[]
volumes Lista de volúmenes que pueden montar los contenedores de este grupo de contenedores. volumen[]

ContainerGroupSubnetId

Nombre Description Importancia
id Identificador de recurso de la red virtual y la subred. string (obligatorio)
nombre Nombre descriptivo de la subred. cuerda / cadena

ContenedorHttpGet

Nombre Description Importancia
httpHeaders Encabezados HTTP. HttpHeader []
camino Ruta de acceso al sondeo. cuerda / cadena
port Número de puerto que se va a sondear. int (obligatorio)
scheme El esquema. 'http'
'https'

ContainerPort (Puerto de contenedor)

Nombre Description Importancia
port Número de puerto expuesto en el grupo de contenedores. int (obligatorio)
protocol Protocolo asociado al puerto. 'TCP'
'UDP'

ContainerProbe

Nombre Description Importancia
exec Comando de ejecución que se va a sondear ContainerExec
failureThreshold Umbral de error. int
httpGet (en inglés) Configuración de Http Get que se va a sondear ContenedorHttpGet
initialDelaySeconds Segundos de retraso inicial. int
periodSeconds Segundos de período. int
successThreshold Umbral de éxito. int
timeoutSeconds Los segundos de tiempo de espera. int

PropiedadesDelContenedor

Nombre Description Importancia
command Los comandos que se van a ejecutar dentro de la instancia de contenedor en formato exec. string[]
configMap Mapa de configuración. ConfigMap
environmentVariables Variables de entorno que se van a establecer en la instancia de contenedor. Variable de entorno[]
image Nombre de la imagen utilizada para crear la instancia del contenedor. cuerda / cadena
livenessProbe Sondeo de ejecución. ContainerProbe
ports Puertos expuestos en la instancia de contenedor. ContainerPort[]
readinessProbe Sondeo de preparación. ContainerProbe
resources Requisitos de recursos de la instancia de contenedor. ResourceRequirements
securityContext Propiedades de seguridad del contenedor. SecurityContextDefinition
volumeMounts El volumen monta los montajes disponibles para la instancia de contenedor. VolumeMount[]

DeploymentExtensionSpec

Nombre Description Importancia
nombre Nombre de la extensión. string (obligatorio)
Propiedades Propiedades específicas de la extensión DeploymentExtensionSpecProperties

DeploymentExtensionSpecProperties

Nombre Description Importancia
extensionType Tipo de extensión que se va a agregar. string (obligatorio)
protectedSettings Configuración protegida para la extensión. cualquiera
settings Configuración de la extensión. cualquiera
version Versión de la extensión que se está usando. string (obligatorio)

DnsConfiguration

Nombre Description Importancia
nameServers Los servidores DNS para el grupo de contenedores. string[] (obligatorio)
options Opciones de DNS para el grupo de contenedores. cuerda / cadena
searchDomains Dominios de búsqueda DNS para la búsqueda de nombres de host en el grupo de contenedores. cuerda / cadena

Propiedades de Encriptación

Nombre Description Importancia
identity Identidad administrada de keyvault. cuerda / cadena
nombre de clave Nombre de clave de cifrado. string (obligatorio)
keyVersion Versión de la clave de cifrado. string (obligatorio)
vaultBaseUrl Dirección URL base de keyvault. string (obligatorio)

EnvironmentVariable

Nombre Description Importancia
nombre Nombre de la variable de entorno. string (obligatorio)
secureValue Valor de la variable de entorno segura. string

Restricciones:
Valor confidencial. Pase como parámetro seguro.
secureValueReference Referencia de la variable de entorno segura. cuerda / cadena
value Valor de la variable de entorno. cuerda / cadena

GitRepoVolume

Nombre Description Importancia
directory Nombre del directorio de destino. No debe contener ni comenzar con '..'. Si se proporciona '.', el directorio de volúmenes será el repositorio git. De lo contrario, si se especifica, el volumen contendrá el repositorio git en el subdirectorio con el nombre especificado. cuerda / cadena
repositorio Dirección URL del repositorio string (obligatorio)
revisión Hash de confirmación para la revisión especificada. cuerda / cadena

GpuResource

Nombre Description Importancia
count Recuento del recurso de GPU. int (obligatorio)
sku SKU del recurso de GPU. 'K80'
'P100'
'V100' (obligatorio)

HttpHeader

Nombre Description Importancia
nombre Nombre del encabezado. cuerda / cadena
value Valor de encabezado. cuerda / cadena

IdentityAccessControl

Nombre Description Importancia
acceso Nivel de acceso de la identidad. "Todo"
'System'
"Usuario"
identity Una identidad. cuerda / cadena

IdentityAcls

Nombre Description Importancia
Acl Niveles de control de acceso para cada identidad. IdentityAccessControl[]
defaultAccess Nivel de acceso predeterminado. "Todo"
'System'
"Usuario"

ImageRegistryCredential

Nombre Description Importancia
identity Identidad del registro privado. cuerda / cadena
identityUrl Dirección URL de identidad del registro privado. cuerda / cadena
contraseña Contraseña del registro privado. string

Restricciones:
Valor confidencial. Pase como parámetro seguro.
passwordReference Referencia de la contraseña del Registro privado. cuerda / cadena
server El servidor del Registro de imágenes de Docker sin un protocolo como "http" y "https". string (obligatorio)
nombre de usuario Nombre de usuario del registro privado. cuerda / cadena

InitContainerDefinition

Nombre Description Importancia
nombre Nombre del contenedor de inicialización. string (obligatorio)
Propiedades Propiedades del contenedor de inicialización. initContainerPropertiesDefinition (obligatorio)

InitContainerPropertiesDefinition

Nombre Description Importancia
command Comando que se va a ejecutar en el contenedor de inicialización en formato exec. string[]
environmentVariables Variables de entorno que se van a establecer en el contenedor de inicialización. Variable de entorno[]
image Imagen del contenedor de inicialización. cuerda / cadena
securityContext Propiedades de seguridad del contenedor. SecurityContextDefinition
volumeMounts El volumen monta los montajes disponibles para el contenedor de inicialización. VolumeMount[]

Dirección IP

Nombre Description Importancia
autoGeneratedDomainNameLabelScope Valor que representa la enumeración de seguridad. El valor "No seguro" es el valor predeterminado si no está seleccionado y significa que la etiqueta de nombre de dominio del objeto no está protegida con la adquisición del subdominio. El valor "TenantReuse" es el valor predeterminado si está seleccionado y significa que la etiqueta de nombre de dominio del objeto se puede reutilizar en el mismo inquilino. El valor "SubscriptionReuse" significa que la etiqueta de nombre de dominio del objeto se puede reutilizar dentro de la misma suscripción. El valor "ResourceGroupReuse" significa que la etiqueta de nombre de dominio del objeto se puede reutilizar dentro del mismo grupo de recursos. El valor "NoReuse" significa que la etiqueta de nombre de dominio del objeto no se puede reutilizar dentro del mismo grupo de recursos, suscripción o inquilino. 'Noreuse'
'ResourceGroupReuse'
'Reutilización de suscripciones'
'Reutilización de inquilinos'
"No seguro"
dnsNameLabel Etiqueta de nombre DNS para la dirección IP. cuerda / cadena
IP Dirección IP expuesta a la red pública de Internet. cuerda / cadena
ports Lista de puertos expuestos en el grupo de contenedores. puerto[] (obligatorio)
type Especifica si la dirección IP se expone a la red virtual pública de Internet o privada. 'Private'
'Public' (obligatorio)

Análisis de registros

Nombre Description Importancia
Tipo de registro Tipo de registro que se va a usar. "ContainerInsights"
'ContainerInstanceLogs'
metadata Metadatos de Log Analytics. LogAnalyticsMetadata
workspaceId Identificador del área de trabajo para Log Analytics string (obligatorio)
workspaceKey La clave del área de trabajo para Log Analytics string

Restricciones:
Valor confidencial. Pase como parámetro seguro. (required)
IdentificadorDeRecursoDelEspacioDeTrabajo Identificador de recurso del área de trabajo para Log Analytics string

Restricciones:
Valor confidencial. Pase como parámetro seguro.

LogAnalyticsMetadata

Nombre Description Importancia

Puerto

Nombre Description Importancia
port Número de puerto. int (obligatorio)
protocol Protocolo asociado al puerto. 'TCP'
'UDP'

ResourceLimits

Nombre Description Importancia
cpu Límite de CPU de esta instancia de contenedor. int
gpu Límite de GPU de esta instancia de contenedor. gpuResource de
memoryInGB Límite de memoria en GB de esta instancia de contenedor. int

ResourceRequests

Nombre Description Importancia
cpu Solicitud de CPU de esta instancia de contenedor. int (obligatorio)
gpu Solicitud de GPU de esta instancia de contenedor. gpuResource de
memoryInGB Solicitud de memoria en GB de esta instancia de contenedor. int (obligatorio)

ResourceRequirements

Nombre Description Importancia
limits Límites de recursos de esta instancia de contenedor. ResourceLimits
solicitudes Solicitudes de recursos de esta instancia de contenedor. ResourceRequests (obligatorio)

ResourceTags (Etiquetas de recurso)

Nombre Description Importancia

Referencia secreta

Nombre Description Importancia
identity Identificador de recurso de ARM de la identidad administrada que tiene acceso al secreto en el almacén de claves. string (obligatorio)
nombre Identificador de la referencia secreta string (obligatorio)
secretReferenceUri Identificador URI del secreto en el almacén de claves string (obligatorio)

Volumen de referencia secreta

Nombre Description Importancia

Volumen secreto

Nombre Description Importancia

SecurityContextCapabilitiesDefinition

Nombre Description Importancia
add Funcionalidades que se van a agregar al contenedor. string[]
anular Funcionalidades que se van a quitar del contenedor. string[]

SecurityContextDefinition

Nombre Description Importancia
allowPrivilegeEscalation Valor booleano que indica si el proceso de inicialización puede elevar sus privilegios bool
capabilities Funcionalidades que se van a agregar o quitar de un contenedor. SecurityContextCapabilitiesDefinition
privilegiado Marca para determinar si los permisos de contenedor se elevan a Privileged. bool
runAsGroup Establece el GID de usuario para el contenedor. int
runAsUser Establece el UID de usuario del contenedor. int
seccompProfile una cadena codificada en base64 que contiene el contenido del JSON en el perfil de seccomp cuerda / cadena

StandbyPoolProfileDefinition

Nombre Description Importancia
failContainerGroupCreateOnReuseFailure Marca para determinar si ACI debe producir un error en la solicitud de creación si el grupo de contenedores no se puede obtener del grupo en espera. bool
id Id. de referencia del perfil de grupo en espera. Este será un identificador de recurso de ARM con el formato : '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StandbyPool/standbyContainerGroupPools/{standbyPoolName}'. cuerda / cadena

UserAssignedIdentities

Nombre Description Importancia

Volumen

Nombre Description Importancia
azureFile El volumen de Azure File. AzureFileVolume
emptyDir Volumen de directorio vacío. cualquiera
gitRepo El volumen del repositorio de Git. gitRepoVolume
nombre Nombre del volumen. string (obligatorio)
secret Volumen secreto. Volumen secreto
secretReference Volumen de referencia secreta. Volumen de referencia secreta

VolumeMount

Nombre Description Importancia
mountPath Ruta de acceso dentro del contenedor donde se debe montar el volumen. No debe contener dos puntos (:). string (obligatorio)
nombre Nombre del montaje del volumen. string (obligatorio)
Solo lectura Marca que indica si el montaje del volumen es de solo lectura. bool

Ejemplos de uso

Ejemplos de Terraform

Un ejemplo básico de implementación de una instancia de 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    = ["*"]
}

Módulos comprobados de Azure

Los siguientes módulos comprobados de Azure se pueden usar para implementar este tipo de recurso.

Módulo Description
Container Instance Módulo de recursos de AVM para la instancia de contenedor