Compartir a través de


Microsoft.App containerApps 2022-10-01

Definición de recursos de Bicep

El tipo de recurso containerApps se puede implementar con operaciones destinadas a:

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

Formato de los recursos

Para crear un recurso de Microsoft.App/containerApps, agregue el siguiente bicep a la plantilla.

resource symbolicname 'Microsoft.App/containerApps@2022-10-01' = {
  name: 'string'
  location: 'string'
  tags: {
    tagName1: 'tagValue1'
    tagName2: 'tagValue2'
  }
  extendedLocation: {
    name: 'string'
    type: 'CustomLocation'
  }
  identity: {
    type: 'string'
    userAssignedIdentities: {
      {customized property}: {}
    }
  }
  properties: {
    configuration: {
      activeRevisionsMode: 'string'
      dapr: {
        appId: 'string'
        appPort: int
        appProtocol: 'string'
        enableApiLogging: bool
        enabled: bool
        httpMaxRequestSize: int
        httpReadBufferSize: int
        logLevel: 'string'
      }
      ingress: {
        allowInsecure: bool
        clientCertificateMode: 'string'
        corsPolicy: {
          allowCredentials: bool
          allowedHeaders: [
            'string'
          ]
          allowedMethods: [
            'string'
          ]
          allowedOrigins: [
            'string'
          ]
          exposeHeaders: [
            'string'
          ]
          maxAge: int
        }
        customDomains: [
          {
            bindingType: 'string'
            certificateId: 'string'
            name: 'string'
          }
        ]
        exposedPort: int
        external: bool
        ipSecurityRestrictions: [
          {
            action: 'string'
            description: 'string'
            ipAddressRange: 'string'
            name: 'string'
          }
        ]
        targetPort: int
        traffic: [
          {
            label: 'string'
            latestRevision: bool
            revisionName: 'string'
            weight: int
          }
        ]
        transport: 'string'
      }
      maxInactiveRevisions: int
      registries: [
        {
          identity: 'string'
          passwordSecretRef: 'string'
          server: 'string'
          username: 'string'
        }
      ]
      secrets: [
        {
          name: 'string'
          value: 'string'
        }
      ]
    }
    environmentId: 'string'
    managedEnvironmentId: 'string'
    template: {
      containers: [
        {
          args: [
            'string'
          ]
          command: [
            'string'
          ]
          env: [
            {
              name: 'string'
              secretRef: 'string'
              value: 'string'
            }
          ]
          image: 'string'
          name: 'string'
          probes: [
            {
              failureThreshold: int
              httpGet: {
                host: 'string'
                httpHeaders: [
                  {
                    name: 'string'
                    value: 'string'
                  }
                ]
                path: 'string'
                port: int
                scheme: 'string'
              }
              initialDelaySeconds: int
              periodSeconds: int
              successThreshold: int
              tcpSocket: {
                host: 'string'
                port: int
              }
              terminationGracePeriodSeconds: int
              timeoutSeconds: int
              type: 'string'
            }
          ]
          resources: {
            cpu: json('decimal-as-string')
            memory: 'string'
          }
          volumeMounts: [
            {
              mountPath: 'string'
              volumeName: 'string'
            }
          ]
        }
      ]
      initContainers: [
        {
          args: [
            'string'
          ]
          command: [
            'string'
          ]
          env: [
            {
              name: 'string'
              secretRef: 'string'
              value: 'string'
            }
          ]
          image: 'string'
          name: 'string'
          resources: {
            cpu: json('decimal-as-string')
            memory: 'string'
          }
          volumeMounts: [
            {
              mountPath: 'string'
              volumeName: 'string'
            }
          ]
        }
      ]
      revisionSuffix: 'string'
      scale: {
        maxReplicas: int
        minReplicas: int
        rules: [
          {
            azureQueue: {
              auth: [
                {
                  secretRef: 'string'
                  triggerParameter: 'string'
                }
              ]
              queueLength: int
              queueName: 'string'
            }
            custom: {
              auth: [
                {
                  secretRef: 'string'
                  triggerParameter: 'string'
                }
              ]
              metadata: {
                {customized property}: 'string'
              }
              type: 'string'
            }
            http: {
              auth: [
                {
                  secretRef: 'string'
                  triggerParameter: 'string'
                }
              ]
              metadata: {
                {customized property}: 'string'
              }
            }
            name: 'string'
            tcp: {
              auth: [
                {
                  secretRef: 'string'
                  triggerParameter: 'string'
                }
              ]
              metadata: {
                {customized property}: 'string'
              }
            }
          }
        ]
      }
      volumes: [
        {
          name: 'string'
          storageName: 'string'
          storageType: 'string'
        }
      ]
    }
    workloadProfileType: 'string'
  }
}

Valores de propiedad

containerApps

Nombre Descripción Value
name El nombre del recurso string (obligatorio)

Límite de caracteres: 2-32

Caracteres válidos:
Letras minúsculas, números y guiones.

Comience con una letra y termine con un carácter alfanumérico.
ubicación Ubicación geográfica donde reside el recurso string (obligatorio)
etiquetas Etiquetas del recurso. Diccionario de nombres y valores de etiqueta. Consulte Etiquetas en plantillas.
extendedLocation Tipo complejo de la ubicación extendida. ExtendedLocation
identidad Identidades administradas para que la aplicación contenedora interactúe con otros servicios de Azure sin mantener secretos ni credenciales en el código. ManagedServiceIdentity
properties Propiedades específicas del recurso ContainerApp ContainerAppProperties

ExtendedLocation

Nombre Descripción Value
name Nombre de la ubicación extendida. string
type Tipo de la ubicación extendida. 'CustomLocation'

ManagedServiceIdentity

Nombre Descripción Value
type Tipo de identidad de servicio administrada (donde se permiten los tipos SystemAssigned y UserAssigned). 'Ninguno'
'SystemAssigned'
'SystemAssigned,UserAssigned'
'UserAssigned' (obligatorio)
userAssignedIdentities Conjunto de identidades asignadas por el usuario asociadas al recurso. Las claves del diccionario userAssignedIdentities serán identificadores de recursos de ARM con el formato: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Los valores del diccionario pueden ser objetos vacíos ({}) en las solicitudes. UserAssignedIdentities

UserAssignedIdentities

Nombre Descripción Valor
{propiedad personalizada} UserAssignedIdentity

UserAssignedIdentity

Este objeto no contiene ninguna propiedad que se va a establecer durante la implementación. Todas las propiedades son ReadOnly.

ContainerAppProperties

Nombre Descripción Valor
configuración Propiedades de configuración de la aplicación contenedora no con versiones. Configuración
environmentId Identificador de recurso del entorno. string
managedEnvironmentId Desusado. Identificador de recurso del entorno de la aplicación contenedora. string
template Definición de aplicación con versiones de container App. Plantilla
workloadProfileType Tipo de perfil de carga de trabajo que se va a anclar para la ejecución de la aplicación contenedora. string

Configuración

Nombre Descripción Valor
activeRevisionsMode ActiveRevisionsMode controla cómo se controlan las revisiones activas para la aplicación contenedora:
{list} {item} Multiple: se pueden activar varias revisiones. {/item} {item} Único: solo una revisión puede estar activa a la vez. Los pesos de revisión no se pueden usar en este modo. Si no se proporciona ningún valor, este es el valor predeterminado. {/item} {/list}
'Multiple'
'Single'
dapr Configuración de Dapr para la aplicación contenedora. Dapr
Ingreso Configuraciones de entrada. Entrada
maxInactiveRevisions Opcional. Número máximo de revisiones inactivas que puede tener una aplicación contenedora. int
registries Recopilación de credenciales de registro de contenedor privado para contenedores usados por la aplicación contenedora RegistryCredentials[]
secrets Colección de secretos usados por una aplicación contenedora Secreto[]

Dapr

Nombre Descripción Value
appId Identificador de aplicación dapr string
appPort Indica a Dapr en qué puerto escucha la aplicación. int
appProtocol Indica a Dapr qué protocolo usa la aplicación. Las opciones válidas son http y grpc. El valor predeterminado es http 'grpc'
'http'
enableApiLogging Habilita el registro de API para el sidecar de Dapr bool
enabled Boolean que indica si el coche lateral dapr está habilitado bool
httpMaxRequestSize Aumento del tamaño máximo del parámetro de servidores http y grpc del cuerpo de la solicitud en MB para controlar la carga de archivos grandes. El valor predeterminado es 4 MB. int
httpReadBufferSize Tamaño máximo de dapr del búfer de lectura de encabezado http en KB para controlar al enviar encabezados de varios KB. El valor predeterminado es 65 KB. int
logLevel Establece el nivel de registro del sidecar de Dapr. Los valores permitidos son debug, info, warn, error. El valor predeterminado es información. 'depurar'
'error'
'info'
'advertir'

Entrada

Nombre Descripción Valor
allowInsecure Bool que indica si se permiten conexiones HTTP a . Si se establece en conexiones HTTP falsas se redirige automáticamente a las conexiones HTTPS. bool
clientCertificateMode Modo de certificado de cliente para la autenticación de mTLS. Omitir indica que el servidor quita el certificado de cliente al reenviar. Accept indica que el servidor reenvía el certificado de cliente, pero no requiere un certificado de cliente. Requerir indica que el servidor requiere un certificado de cliente. 'accept'
'ignore'
'require'
corsPolicy Directiva de CORS para la aplicación contenedora CorsPolicy
customDomains enlaces de dominio personalizados para los nombres de host de Container Apps. CustomDomain[]
exposedPort Puerto expuesto en contenedores para el tráfico TCP desde la entrada int
external Bool que indica si la aplicación expone un punto de conexión HTTP externo bool
ipSecurityRestrictions Reglas para restringir la dirección IP entrante. IpSecurityRestrictionRule[]
targetPort Puerto de destino en contenedores para el tráfico de entrada int
traffic Pesos del tráfico para las revisiones de la aplicación TrafficWeight[]
transporte Protocolo de transporte de entrada 'auto'
'http'
'http2'
'tcp'

CorsPolicy

Nombre Descripción Valor
allowCredentials permitir credencial o no bool
allowedHeaders encabezados HTTP permitidos string[]
allowedMethods métodos HTTP permitidos string[]
allowedOrigins orígenes permitidos string[] (obligatorio)
exposeHeaders exponer encabezados HTTP string[]
maxAge el cliente de tiempo máximo puede almacenar en caché el resultado int

CustomDomain

Nombre Descripción Valor
bindingType Custom Domain tipo de enlace. 'Deshabilitado'
'SniEnabled'
certificateId Identificador de recurso del certificado que se va a enlazar a este nombre de host. string
name Nombre de host. string (obligatorio)

IpSecurityRestrictionRule

Nombre Descripción Valor
action Permitir o denegar reglas para determinar la dirección IP entrante. Nota: Las reglas solo pueden constar de ALL Allow o ALL Deny 'Permitir'
'Deny' (obligatorio)
description Describir la regla de restricción de IP que se envía a la aplicación contenedora. Este campo es opcional. string
ipAddressRange Notación CIDR para que coincida con la dirección IP entrante string (obligatorio)
name Nombre de la regla de restricción de IP. string (obligatorio)

TrafficWeight

Nombre Descripción Valor
etiqueta Asocia una etiqueta de tráfico a una revisión string
latestRevision Indica que el peso del tráfico pertenece a una revisión estable más reciente. bool
revisionName Nombre de una revisión string
peso Peso del tráfico asignado a una revisión int

RegistryCredentials

Nombre Descripción Valor
identidad Una identidad administrada que se va a usar para autenticarse con Azure Container Registry. En el caso de las identidades asignadas por el usuario, use el identificador de recurso de identidad asignado por el usuario completo. Para las identidades asignadas por el sistema, use "system" string
passwordSecretRef Nombre del secreto que contiene la contraseña de inicio de sesión del Registro string
server Container Registry Server string
username Nombre de usuario de Container Registry string

Secreto

Nombre Descripción Value
name Nombre del secreto. string
value Valor secreto. string

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

Plantilla

Nombre Descripción Value
containers Lista de definiciones de contenedor para la aplicación contenedora. Contenedor[]
initContainers Lista de contenedores especializados que se ejecutan antes de los contenedores de aplicaciones. InitContainer[]
revisionSuffix Sufijo descriptivo que se anexa al nombre de revisión string
scale Propiedades de escalado de la aplicación contenedora. Escala
volumes Lista de definiciones de volumen para la aplicación contenedora. Volumen[]

Contenedor

Nombre Descripción Valor
args Argumentos de comando de inicio de contenedor. string[]
command Comando de inicio del contenedor. string[]
env Variables de entorno de contenedor. EnvironmentVar[]
imagen Etiqueta de imagen de contenedor. string
name Nombre del contenedor personalizado. string
probes Lista de sondeos para el contenedor. ContainerAppProbe[]
resources Requisitos de recursos de contenedor. ContainerResources
volumeMounts Montajes de volumen de contenedor. VolumeMount[]

EnvironmentVar

Nombre Descripción Value
name Nombre de la variable de entorno. string
secretRef Nombre del secreto de la aplicación contenedora del que se va a extraer el valor de la variable de entorno. string
value Valor de variable de entorno no secreto. string

ContainerAppProbe

Nombre Descripción Valor
failureThreshold Se han producido errores consecutivos mínimos para que el sondeo se considere erróneo después de haber realizado correctamente. El valor predeterminado es 3. El valor mínimo es 1. El valor máximo es 10. int
httpGet HTTPGet especifica la solicitud HTTP que se va a realizar. ContainerAppProbeHttpGet
initialDelaySeconds Número de segundos después de que se haya iniciado el contenedor antes de que se inicien los sondeos de ejecución. El valor mínimo es 1. El valor máximo es 60. int
periodSeconds Frecuencia (en segundos) con que se ejecutará el sondeo. El valor predeterminado es de 10 segundos. El valor mínimo es 1. El valor máximo es 240. int
successThreshold Número mínimo de éxitos consecutivos para que el sondeo se considere correcto después de haber producido un error. De manera predeterminada, su valor es 1. Debe ser 1 para la vida y el inicio. El valor mínimo es 1. El valor máximo es 10. int
tcpSocket TCPSocket especifica una acción que implica un puerto TCP. Todavía no se admiten enlaces TCP. ContainerAppProbeTcpSocket
terminationGracePeriodSeconds Duración opcional en segundos que el pod debe finalizar correctamente tras un error de sondeo. El período de gracia es la duración en segundos después de que los procesos que se ejecutan en el pod se envíen una señal de terminación y el tiempo en que los procesos se detengan forzosamente con una señal de eliminación. Establezca este valor más largo que el tiempo de limpieza esperado para el proceso. Si este valor es nulo, se usará la terminación del podGracePeriodSeconds. De lo contrario, este valor invalida el valor proporcionado por la especificación del pod. El valor debe ser entero no negativo. El valor cero indica que se detiene inmediatamente a través de la señal de eliminación (sin oportunidad de apagar). Se trata de un campo alfa y requiere habilitar la puerta de características ProbeTerminationGracePeriod. El valor máximo es de 3600 segundos (1 hora) int
timeoutSeconds Número de segundos después del cual se agota el tiempo de espera del sondeo. El valor predeterminado es 1 segundo. El valor mínimo es 1. El valor máximo es 240. int
tipo Tipo de sondeo. 'Liveness'
"Preparación"
'Inicio'

ContainerAppProbeHttpGet

Nombre Descripción Valor
host Nombre de host al que conectarse, el valor predeterminado es la dirección IP del pod. Probablemente quiera establecer "Host" en httpHeaders en su lugar. string
httpHeaders Encabezados personalizados que se van a establecer en la solicitud. HTTP permite encabezados repetidos. ContainerAppProbeHttpGetHttpHeadersItem[]
path Ruta de acceso al acceso en el servidor HTTP. string
port Nombre o número del puerto al que se va a acceder en el contenedor. El número debe estar en el intervalo de 1 a 65535. El nombre debe ser un IANA_SVC_NAME. int (obligatorio)
scheme Esquema que se va a usar para conectarse al host. El valor predeterminado es HTTP. 'HTTP'
'HTTPS'

ContainerAppProbeHttpGetHttpHeadersItem

Nombre Descripción Value
name Nombre del campo de encabezado string (obligatorio)
value Valor del campo de encabezado string (obligatorio)

ContainerAppProbeTcpSocket

Nombre Descripción Valor
host Opcional: el nombre de host al que conectarse, tiene como valor predeterminado la dirección IP del pod. string
port Número o nombre del puerto al que se va a acceder en el contenedor. El número debe estar en el intervalo de 1 a 65535. El nombre debe ser un IANA_SVC_NAME. int (obligatorio)

ContainerResources

Nombre Descripción Valor
cpu CPU necesaria en núcleos, por ejemplo, 0,5 Para especificar un valor decimal, use la función json(). int o json decimal
memoria Memoria necesaria, por ejemplo, "250 Mb" string

VolumeMount

Nombre Descripción Valor
mountPath Ruta de acceso dentro del contenedor en el que se debe montar el volumen. No debe contener ':'. string
volumeName Debe coincidir con el nombre de un volumen. string

InitContainer

Nombre Descripción Valor
args Argumentos de comando de inicio de contenedor. string[]
command Comando de inicio del contenedor. string[]
env Variables de entorno de contenedor. EnvironmentVar[]
imagen Etiqueta de imagen de contenedor. string
name Nombre del contenedor personalizado. string
resources Requisitos de recursos de contenedor. ContainerResources
volumeMounts Montajes de volúmenes de contenedor. VolumeMount[]

Escala

Nombre Descripción Valor
maxReplicas Opcional. Número máximo de réplicas de contenedor. El valor predeterminado es 10 si no se establece. int
minReplicas Opcional. Número mínimo de réplicas de contenedor. int
reglas Reglas de escalado. ScaleRule[]

ScaleRule

Nombre Descripción Valor
azureQueue Escalado basado en cola de Azure. QueueScaleRule
custom Regla de escalado personalizada. CustomScaleRule
http Escalado basado en solicitudes HTTP. HttpScaleRule
name Nombre de la regla de escalado string
tcp Escalado basado en solicitudes TCP. TcpScaleRule

QueueScaleRule

Nombre Descripción Valor
auth Secretos de autenticación para la regla de escalado de colas. ScaleRuleAuth[]
queueLength Longitud de la cola. int
queueName Nombre de la cola. string

ScaleRuleAuth

Nombre Descripción Valor
secretRef Nombre del secreto de la aplicación contenedora del que se va a extraer los parámetros de autenticación. string
triggerParameter Parámetro de desencadenador que usa el secreto string

CustomScaleRule

Nombre Descripción Valor
auth Secretos de autenticación para la regla de escalado personalizada. ScaleRuleAuth[]
metadata Propiedades de metadatos para describir la regla de escalado personalizada. CustomScaleRuleMetadata
tipo Tipo de la regla de escalado personalizada
por ejemplo: azure-servicebus, redis, etc.
string

CustomScaleRuleMetadata

Nombre Descripción Valor
{propiedad personalizada} string

HttpScaleRule

Nombre Descripción Valor
auth Secretos de autenticación para la regla de escalado personalizada. ScaleRuleAuth[]
metadata Propiedades de metadatos para describir la regla de escalado http. HttpScaleRuleMetadata

HttpScaleRuleMetadata

Nombre Descripción Valor
{propiedad personalizada} string

TcpScaleRule

Nombre Descripción Valor
auth Secretos de autenticación para la regla de escalado tcp. ScaleRuleAuth[]
metadata Propiedades de metadatos para describir la regla de escalado tcp. TcpScaleRuleMetadata

TcpScaleRuleMetadata

Nombre Descripción Valor
{propiedad personalizada} string

Volumen

Nombre Descripción Value
name Nombre del volumen. string
storageName Nombre del recurso de almacenamiento. No es necesario proporcionar emptyDir. string
storageType Tipo de almacenamiento para el volumen. Si no se proporciona, use EmptyDir. "AzureFile"
'EmptyDir'

Plantillas de inicio rápido

Las siguientes plantillas de inicio rápido implementan este tipo de recurso.

Plantilla Descripción
Crea una aplicación de contenedor y un entorno con el Registro

Implementación en Azure
Cree un entorno de aplicación de contenedor con una aplicación de contenedor básica a partir de un Azure Container Registry. También implementa un área de trabajo de Log Analytics para almacenar registros.
Crea una aplicación contenedora con un entorno de aplicación contenedora

Implementación en Azure
Cree un entorno de aplicación de contenedor con una aplicación de contenedor básica. También implementa un área de trabajo de Log Analytics para almacenar registros.
Crea una aplicación contenedora dentro de un entorno de aplicación contenedora

Implementación en Azure
Cree un entorno de aplicación de contenedor con una aplicación de contenedor básica. También implementa un área de trabajo de Log Analytics para almacenar registros.
Crea una aplicación contenedora con una regla de escalado HTTP definida

Implementación en Azure
Cree un entorno de aplicación de contenedor con una aplicación de contenedor básica que se escale en función del tráfico HTTP.
Crea un entorno de aplicación de contenedor externo con una red virtual

Implementación en Azure
Crea un entorno de aplicación de contenedor externo con una red virtual.
Crea un entorno de aplicación de contenedor interno con una red virtual

Implementación en Azure
Crea un entorno de aplicación de contenedor interno con una red virtual.

Definición de recursos de plantilla de ARM

El tipo de recurso containerApps se puede implementar con operaciones destinadas a:

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

Formato de los recursos

Para crear un recurso de Microsoft.App/containerApps, agregue el siguiente json a la plantilla.

{
  "type": "Microsoft.App/containerApps",
  "apiVersion": "2022-10-01",
  "name": "string",
  "location": "string",
  "tags": {
    "tagName1": "tagValue1",
    "tagName2": "tagValue2"
  },
  "extendedLocation": {
    "name": "string",
    "type": "CustomLocation"
  },
  "identity": {
    "type": "string",
    "userAssignedIdentities": {
      "{customized property}": {}
    }
  },
  "properties": {
    "configuration": {
      "activeRevisionsMode": "string",
      "dapr": {
        "appId": "string",
        "appPort": "int",
        "appProtocol": "string",
        "enableApiLogging": "bool",
        "enabled": "bool",
        "httpMaxRequestSize": "int",
        "httpReadBufferSize": "int",
        "logLevel": "string"
      },
      "ingress": {
        "allowInsecure": "bool",
        "clientCertificateMode": "string",
        "corsPolicy": {
          "allowCredentials": "bool",
          "allowedHeaders": [ "string" ],
          "allowedMethods": [ "string" ],
          "allowedOrigins": [ "string" ],
          "exposeHeaders": [ "string" ],
          "maxAge": "int"
        },
        "customDomains": [
          {
            "bindingType": "string",
            "certificateId": "string",
            "name": "string"
          }
        ],
        "exposedPort": "int",
        "external": "bool",
        "ipSecurityRestrictions": [
          {
            "action": "string",
            "description": "string",
            "ipAddressRange": "string",
            "name": "string"
          }
        ],
        "targetPort": "int",
        "traffic": [
          {
            "label": "string",
            "latestRevision": "bool",
            "revisionName": "string",
            "weight": "int"
          }
        ],
        "transport": "string"
      },
      "maxInactiveRevisions": "int",
      "registries": [
        {
          "identity": "string",
          "passwordSecretRef": "string",
          "server": "string",
          "username": "string"
        }
      ],
      "secrets": [
        {
          "name": "string",
          "value": "string"
        }
      ]
    },
    "environmentId": "string",
    "managedEnvironmentId": "string",
    "template": {
      "containers": [
        {
          "args": [ "string" ],
          "command": [ "string" ],
          "env": [
            {
              "name": "string",
              "secretRef": "string",
              "value": "string"
            }
          ],
          "image": "string",
          "name": "string",
          "probes": [
            {
              "failureThreshold": "int",
              "httpGet": {
                "host": "string",
                "httpHeaders": [
                  {
                    "name": "string",
                    "value": "string"
                  }
                ],
                "path": "string",
                "port": "int",
                "scheme": "string"
              },
              "initialDelaySeconds": "int",
              "periodSeconds": "int",
              "successThreshold": "int",
              "tcpSocket": {
                "host": "string",
                "port": "int"
              },
              "terminationGracePeriodSeconds": "int",
              "timeoutSeconds": "int",
              "type": "string"
            }
          ],
          "resources": {
            "cpu": "[json('decimal-as-string')]",
            "memory": "string"
          },
          "volumeMounts": [
            {
              "mountPath": "string",
              "volumeName": "string"
            }
          ]
        }
      ],
      "initContainers": [
        {
          "args": [ "string" ],
          "command": [ "string" ],
          "env": [
            {
              "name": "string",
              "secretRef": "string",
              "value": "string"
            }
          ],
          "image": "string",
          "name": "string",
          "resources": {
            "cpu": "[json('decimal-as-string')]",
            "memory": "string"
          },
          "volumeMounts": [
            {
              "mountPath": "string",
              "volumeName": "string"
            }
          ]
        }
      ],
      "revisionSuffix": "string",
      "scale": {
        "maxReplicas": "int",
        "minReplicas": "int",
        "rules": [
          {
            "azureQueue": {
              "auth": [
                {
                  "secretRef": "string",
                  "triggerParameter": "string"
                }
              ],
              "queueLength": "int",
              "queueName": "string"
            },
            "custom": {
              "auth": [
                {
                  "secretRef": "string",
                  "triggerParameter": "string"
                }
              ],
              "metadata": {
                "{customized property}": "string"
              },
              "type": "string"
            },
            "http": {
              "auth": [
                {
                  "secretRef": "string",
                  "triggerParameter": "string"
                }
              ],
              "metadata": {
                "{customized property}": "string"
              }
            },
            "name": "string",
            "tcp": {
              "auth": [
                {
                  "secretRef": "string",
                  "triggerParameter": "string"
                }
              ],
              "metadata": {
                "{customized property}": "string"
              }
            }
          }
        ]
      },
      "volumes": [
        {
          "name": "string",
          "storageName": "string",
          "storageType": "string"
        }
      ]
    },
    "workloadProfileType": "string"
  }
}

Valores de propiedad

containerApps

Nombre Descripción Value
type Tipo de recurso 'Microsoft.App/containerApps'
apiVersion La versión de la API de recursos '2022-10-01'
name El nombre del recurso string (obligatorio)

Límite de caracteres: 2-32

Caracteres válidos:
Letras minúsculas, números y guiones.

Comience con una letra y termine con un carácter alfanumérico.
ubicación Ubicación geográfica donde reside el recurso string (obligatorio)
etiquetas Etiquetas del recurso. Diccionario de nombres y valores de etiqueta. Consulte Etiquetas en plantillas.
extendedLocation Tipo complejo de la ubicación extendida. ExtendedLocation
identidad Identidades administradas para que la aplicación contenedora interactúe con otros servicios de Azure sin mantener secretos ni credenciales en el código. ManagedServiceIdentity
properties Propiedades específicas del recurso ContainerApp ContainerAppProperties

ExtendedLocation

Nombre Descripción Value
name Nombre de la ubicación extendida. string
type Tipo de la ubicación extendida. 'CustomLocation'

ManagedServiceIdentity

Nombre Descripción Value
type Tipo de identidad de servicio administrada (donde se permiten los tipos SystemAssigned y UserAssigned). 'Ninguno'
'SystemAssigned'
'SystemAssigned,UserAssigned'
'UserAssigned' (obligatorio)
userAssignedIdentities Conjunto de identidades asignadas por el usuario asociadas al recurso. Las claves del diccionario userAssignedIdentities serán identificadores de recursos de ARM con el formato: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Los valores del diccionario pueden ser objetos vacíos ({}) en las solicitudes. UserAssignedIdentities

UserAssignedIdentities

Nombre Descripción Valor
{propiedad personalizada} UserAssignedIdentity

UserAssignedIdentity

Este objeto no contiene ninguna propiedad que se va a establecer durante la implementación. Todas las propiedades son ReadOnly.

ContainerAppProperties

Nombre Descripción Valor
configuración Propiedades de configuración de la aplicación contenedora no con versiones. Configuración
environmentId Identificador de recurso del entorno. string
managedEnvironmentId Desusado. Identificador de recurso del entorno de la aplicación contenedora. string
template Definición de aplicación con versiones de container App. Plantilla
workloadProfileType Tipo de perfil de carga de trabajo que se va a anclar para la ejecución de la aplicación contenedora. string

Configuración

Nombre Descripción Valor
activeRevisionsMode ActiveRevisionsMode controla cómo se controlan las revisiones activas para la aplicación contenedora:
{list} {item} Múltiplo: se pueden activar varias revisiones. {/item} {item} Único: solo una revisión puede estar activa a la vez. Los pesos de revisión no se pueden usar en este modo. Si no se proporciona ningún valor, este es el valor predeterminado. {/item} {/list}
"Múltiplo"
'Single'
dapr Configuración de Dapr para la aplicación contenedora. Dapr
Ingreso Configuraciones de entrada. Entrada
maxInactiveRevisions Opcional. Número máximo de revisiones inactivas que puede tener una aplicación contenedora. int
registries Colección de credenciales de registro de contenedor privado para contenedores usados por la aplicación contenedora RegistryCredentials[]
secrets Colección de secretos usados por una aplicación contenedora Secreto[]

Dapr

Nombre Descripción Value
appId Identificador de aplicación dapr string
appPort Indica a Dapr en qué puerto escucha la aplicación. int
appProtocol Indica a Dapr qué protocolo usa la aplicación. Las opciones válidas son http y grpc. El valor predeterminado es http 'grpc'
'http'
enableApiLogging Habilita el registro de API para el sidecar de Dapr bool
enabled Boolean que indica si el coche lateral dapr está habilitado bool
httpMaxRequestSize Aumentar el tamaño máximo del parámetro http y grpc servers del cuerpo de la solicitud en MB para controlar la carga de archivos grandes. El valor predeterminado es 4 MB. int
httpReadBufferSize Tamaño máximo de Dapr del búfer de lectura de encabezado http en KB para controlar al enviar encabezados de varios KB. El valor predeterminado es 65 KB. int
logLevel Establece el nivel de registro del sidecar de Dapr. Los valores permitidos son debug, info, warn, error. El valor predeterminado es info. 'depurar'
'error'
'info'
'warn'

Entrada

Nombre Descripción Valor
allowInsecure Bool indica si se permiten conexiones HTTP a . Si se establece en conexiones HTTP falsas se redirige automáticamente a las conexiones HTTPS. bool
clientCertificateMode Modo de certificado de cliente para la autenticación mTLS. Omitir indica que el servidor quita el certificado de cliente al reenviar. Accept indica que el servidor reenvía el certificado de cliente, pero no requiere un certificado de cliente. Requerir indica que el servidor requiere un certificado de cliente. 'accept'
'ignore'
'require'
corsPolicy Directiva de CORS para la aplicación contenedora CorsPolicy
customDomains enlaces de dominio personalizados para los nombres de host de Container Apps. CustomDomain[]
exposedPort Puerto expuesto en contenedores para el tráfico TCP desde la entrada int
external Bool indica si la aplicación expone un punto de conexión HTTP externo bool
ipSecurityRestrictions Reglas para restringir la dirección IP entrante. IpSecurityRestrictionRule[]
targetPort Puerto de destino en contenedores para el tráfico de entrada int
traffic Pesos del tráfico para las revisiones de la aplicación TrafficWeight[]
transporte Protocolo de transporte de entrada 'auto'
'http'
'http2'
'tcp'

CorsPolicy

Nombre Descripción Valor
allowCredentials permitir credencial o no bool
allowedHeaders encabezados HTTP permitidos string[]
allowedMethods métodos HTTP permitidos string[]
allowedOrigins orígenes permitidos string[] (obligatorio)
exposeHeaders exponer encabezados HTTP string[]
maxAge el cliente de tiempo máximo puede almacenar en caché el resultado int

CustomDomain

Nombre Descripción Valor
bindingType Custom Domain tipo de enlace. 'Deshabilitado'
'SniEnabled'
certificateId Identificador de recurso del certificado que se va a enlazar a este nombre de host. string
name Nombre de host. string (obligatorio)

IpSecurityRestrictionRule

Nombre Descripción Valor
action Permitir o denegar reglas para determinar la dirección IP entrante. Nota: Las reglas solo pueden constar de ALL Allow o ALL Deny 'Permitir'
'Deny' (obligatorio)
description Describir la regla de restricción de IP que se envía a la aplicación contenedora. Este campo es opcional. string
ipAddressRange Notación CIDR para que coincida con la dirección IP entrante string (obligatorio)
name Nombre de la regla de restricción de IP. string (obligatorio)

TrafficWeight

Nombre Descripción Valor
etiqueta Asocia una etiqueta de tráfico a una revisión string
latestRevision Indica que el peso del tráfico pertenece a una revisión estable más reciente. bool
revisionName Nombre de una revisión string
peso Peso del tráfico asignado a una revisión int

RegistryCredentials

Nombre Descripción Valor
identidad Una identidad administrada que se va a usar para autenticarse con Azure Container Registry. En el caso de las identidades asignadas por el usuario, use el identificador de recurso de identidad asignado por el usuario completo. En el caso de las identidades asignadas por el sistema, use "system" string
passwordSecretRef Nombre del secreto que contiene la contraseña de inicio de sesión del Registro. string
server Servidor de Container Registry string
username Nombre de usuario de Container Registry string

Secreto

Nombre Descripción Value
name Nombre del secreto. string
value Valor secreto. string

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

Plantilla

Nombre Descripción Value
containers Lista de definiciones de contenedor para la aplicación contenedora. Contenedor[]
initContainers Lista de contenedores especializados que se ejecutan antes de los contenedores de aplicaciones. InitContainer[]
revisionSuffix Sufijo descriptivo que se anexa al nombre de revisión string
scale Propiedades de escalado de la aplicación contenedora. Escala
volumes Lista de definiciones de volumen para la aplicación contenedora. Volumen[]

Contenedor

Nombre Descripción Valor
args Argumentos de comando de inicio de contenedor. string[]
command Comando de inicio del contenedor. string[]
env Variables de entorno de contenedor. EnvironmentVar[]
imagen Etiqueta de imagen de contenedor. string
name Nombre del contenedor personalizado. string
probes Lista de sondeos para el contenedor. ContainerAppProbe[]
resources Requisitos de recursos de contenedor. ContainerResources
volumeMounts Montajes de volumen de contenedor. VolumeMount[]

EnvironmentVar

Nombre Descripción Value
name Nombre de la variable de entorno. string
secretRef Nombre del secreto de la aplicación contenedora del que se va a extraer el valor de la variable de entorno. string
value Valor de variable de entorno no secreto. string

ContainerAppProbe

Nombre Descripción Valor
failureThreshold Se han producido errores consecutivos mínimos para que el sondeo se considere erróneo después de haber realizado correctamente. El valor predeterminado es 3. El valor mínimo es 1. El valor máximo es 10. int
httpGet HTTPGet especifica la solicitud HTTP que se va a realizar. ContainerAppProbeHttpGet
initialDelaySeconds Número de segundos después de que se haya iniciado el contenedor antes de que se inicien los sondeos de ejecución. El valor mínimo es 1. El valor máximo es 60. int
periodSeconds Frecuencia (en segundos) con que se ejecutará el sondeo. El valor predeterminado es de 10 segundos. El valor mínimo es 1. El valor máximo es 240. int
successThreshold Número mínimo de éxitos consecutivos para que el sondeo se considere correcto después de haber producido un error. De manera predeterminada, su valor es 1. Debe ser 1 para la vida y el inicio. El valor mínimo es 1. El valor máximo es 10. int
tcpSocket TCPSocket especifica una acción que implica un puerto TCP. Todavía no se admiten enlaces TCP. ContainerAppProbeTcpSocket
terminationGracePeriodSeconds Duración opcional en segundos que el pod debe finalizar correctamente tras un error de sondeo. El período de gracia es la duración en segundos después de que los procesos que se ejecutan en el pod se envíen una señal de terminación y el tiempo en que los procesos se detengan forzosamente con una señal de eliminación. Establezca este valor más largo que el tiempo de limpieza esperado para el proceso. Si este valor es nulo, se usará la terminación del podGracePeriodSeconds. De lo contrario, este valor invalida el valor proporcionado por la especificación del pod. El valor debe ser entero no negativo. El valor cero indica que se detiene inmediatamente a través de la señal de eliminación (sin oportunidad de apagar). Se trata de un campo alfa y requiere habilitar la puerta de características ProbeTerminationGracePeriod. El valor máximo es de 3600 segundos (1 hora) int
timeoutSeconds Número de segundos después del cual se agota el tiempo de espera del sondeo. El valor predeterminado es 1 segundo. El valor mínimo es 1. El valor máximo es 240. int
tipo Tipo de sondeo. 'Liveness'
"Preparación"
'Inicio'

ContainerAppProbeHttpGet

Nombre Descripción Valor
host Nombre de host al que conectarse, el valor predeterminado es la dirección IP del pod. Probablemente quiera establecer "Host" en httpHeaders en su lugar. string
httpHeaders Encabezados personalizados que se van a establecer en la solicitud. HTTP permite encabezados repetidos. ContainerAppProbeHttpGetHttpHeadersItem[]
path Ruta de acceso al acceso en el servidor HTTP. string
port Nombre o número del puerto al que se va a acceder en el contenedor. El número debe estar comprendido entre 1 y 65535. El nombre debe ser un IANA_SVC_NAME. int (obligatorio)
scheme Esquema que se va a usar para conectarse al host. El valor predeterminado es HTTP. 'HTTP'
'HTTPS'

ContainerAppProbeHttpGetHttpHeadersItem

Nombre Descripción Value
name Nombre del campo de encabezado string (obligatorio)
value Valor del campo de encabezado string (obligatorio)

ContainerAppProbeTcpSocket

Nombre Descripción Valor
host Opcional: el nombre de host al que se va a conectar, tiene como valor predeterminado la dirección IP del pod. string
port Número o nombre del puerto al que se va a acceder en el contenedor. El número debe estar comprendido entre 1 y 65535. El nombre debe ser un IANA_SVC_NAME. int (obligatorio)

ContainerResources

Nombre Descripción Valor
cpu Cpu necesaria en núcleos, por ejemplo, 0,5 Para especificar un valor decimal, use la función json(). int o json decimal
memoria Memoria necesaria, por ejemplo, "250 Mb" string

VolumeMount

Nombre Descripción Valor
mountPath Ruta de acceso dentro del contenedor en el que se debe montar el volumen. No debe contener ':'. string
volumeName Debe coincidir con el nombre de un volumen. string

InitContainer

Nombre Descripción Valor
args Argumentos de comando de inicio de contenedor. string[]
command Comando de inicio del contenedor. string[]
env Variables de entorno de contenedor. EnvironmentVar[]
imagen Etiqueta de imagen de contenedor. string
name Nombre del contenedor personalizado. string
resources Requisitos de recursos de contenedor. ContainerResources
volumeMounts Montajes de volúmenes de contenedor. VolumeMount[]

Escala

Nombre Descripción Valor
maxReplicas Opcional. Número máximo de réplicas de contenedor. El valor predeterminado es 10 si no se establece. int
minReplicas Opcional. Número mínimo de réplicas de contenedor. int
reglas Reglas de escalado. ScaleRule[]

ScaleRule

Nombre Descripción Valor
azureQueue Escalado basado en cola de Azure. QueueScaleRule
custom Regla de escalado personalizada. CustomScaleRule
http Escalado basado en solicitudes HTTP. HttpScaleRule
name Nombre de la regla de escalado string
tcp Escalado basado en solicitudes TCP. TcpScaleRule

QueueScaleRule

Nombre Descripción Valor
auth Secretos de autenticación para la regla de escalado de colas. ScaleRuleAuth[]
queueLength Longitud de la cola. int
queueName Nombre de la cola. string

ScaleRuleAuth

Nombre Descripción Valor
secretRef Nombre del secreto de la aplicación contenedora del que se va a extraer los parámetros de autenticación. string
triggerParameter Parámetro de desencadenador que usa el secreto string

CustomScaleRule

Nombre Descripción Valor
auth Secretos de autenticación para la regla de escalado personalizada. ScaleRuleAuth[]
metadata Propiedades de metadatos para describir la regla de escalado personalizada. CustomScaleRuleMetadata
tipo Tipo de la regla de escalado personalizada
por ejemplo: azure-servicebus, redis, etc.
string

CustomScaleRuleMetadata

Nombre Descripción Valor
{propiedad personalizada} string

HttpScaleRule

Nombre Descripción Valor
auth Secretos de autenticación para la regla de escalado personalizada. ScaleRuleAuth[]
metadata Propiedades de metadatos para describir la regla de escalado http. HttpScaleRuleMetadata

HttpScaleRuleMetadata

Nombre Descripción Valor
{propiedad personalizada} string

TcpScaleRule

Nombre Descripción Valor
auth Secretos de autenticación para la regla de escalado tcp. ScaleRuleAuth[]
metadata Propiedades de metadatos para describir la regla de escalado tcp. TcpScaleRuleMetadata

TcpScaleRuleMetadata

Nombre Descripción Valor
{propiedad personalizada} string

Volumen

Nombre Descripción Value
name Nombre del volumen. string
storageName Nombre del recurso de almacenamiento. No es necesario proporcionar emptyDir. string
storageType Tipo de almacenamiento para el volumen. Si no se proporciona, use EmptyDir. "AzureFile"
'EmptyDir'

Plantillas de inicio rápido

Las siguientes plantillas de inicio rápido implementan este tipo de recurso.

Plantilla Descripción
Crea una aplicación de contenedor y un entorno con el Registro

Implementación en Azure
Cree un entorno de aplicación de contenedor con una aplicación de contenedor básica a partir de un Azure Container Registry. También implementa un área de trabajo de Log Analytics para almacenar registros.
Crea una aplicación contenedora con un entorno de aplicación contenedora

Implementación en Azure
Cree un entorno de aplicación de contenedor con una aplicación de contenedor básica. También implementa un área de trabajo de Log Analytics para almacenar registros.
Crea una aplicación contenedora dentro de un entorno de aplicación contenedora

Implementación en Azure
Cree un entorno de aplicación de contenedor con una aplicación de contenedor básica. También implementa un área de trabajo de Log Analytics para almacenar registros.
Crea una aplicación contenedora con una regla de escalado HTTP definida

Implementación en Azure
Cree un entorno de aplicación de contenedor con una aplicación de contenedor básica que se escale en función del tráfico HTTP.
Crea un entorno de aplicación de contenedor externo con una red virtual

Implementación en Azure
Crea un entorno de aplicación de contenedor externo con una red virtual.
Crea un entorno de aplicación de contenedor interno con una red virtual

Implementación en Azure
Crea un entorno de aplicación de contenedor interno con una red virtual.

Definición de recursos de Terraform (proveedor AzAPI)

El tipo de recurso containerApps se puede implementar con operaciones destinadas a:

  • Grupos de recursos

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

Formato de los recursos

Para crear un recurso de Microsoft.App/containerApps, agregue el siguiente terraform a la plantilla.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.App/containerApps@2022-10-01"
  name = "string"
  location = "string"
  parent_id = "string"
  tags = {
    tagName1 = "tagValue1"
    tagName2 = "tagValue2"
  }
  identity {
    type = "string"
    identity_ids = []
  }
  body = jsonencode({
    properties = {
      configuration = {
        activeRevisionsMode = "string"
        dapr = {
          appId = "string"
          appPort = int
          appProtocol = "string"
          enableApiLogging = bool
          enabled = bool
          httpMaxRequestSize = int
          httpReadBufferSize = int
          logLevel = "string"
        }
        ingress = {
          allowInsecure = bool
          clientCertificateMode = "string"
          corsPolicy = {
            allowCredentials = bool
            allowedHeaders = [
              "string"
            ]
            allowedMethods = [
              "string"
            ]
            allowedOrigins = [
              "string"
            ]
            exposeHeaders = [
              "string"
            ]
            maxAge = int
          }
          customDomains = [
            {
              bindingType = "string"
              certificateId = "string"
              name = "string"
            }
          ]
          exposedPort = int
          external = bool
          ipSecurityRestrictions = [
            {
              action = "string"
              description = "string"
              ipAddressRange = "string"
              name = "string"
            }
          ]
          targetPort = int
          traffic = [
            {
              label = "string"
              latestRevision = bool
              revisionName = "string"
              weight = int
            }
          ]
          transport = "string"
        }
        maxInactiveRevisions = int
        registries = [
          {
            identity = "string"
            passwordSecretRef = "string"
            server = "string"
            username = "string"
          }
        ]
        secrets = [
          {
            name = "string"
            value = "string"
          }
        ]
      }
      environmentId = "string"
      managedEnvironmentId = "string"
      template = {
        containers = [
          {
            args = [
              "string"
            ]
            command = [
              "string"
            ]
            env = [
              {
                name = "string"
                secretRef = "string"
                value = "string"
              }
            ]
            image = "string"
            name = "string"
            probes = [
              {
                failureThreshold = int
                httpGet = {
                  host = "string"
                  httpHeaders = [
                    {
                      name = "string"
                      value = "string"
                    }
                  ]
                  path = "string"
                  port = int
                  scheme = "string"
                }
                initialDelaySeconds = int
                periodSeconds = int
                successThreshold = int
                tcpSocket = {
                  host = "string"
                  port = int
                }
                terminationGracePeriodSeconds = int
                timeoutSeconds = int
                type = "string"
              }
            ]
            resources = {
              cpu = "decimal-as-string"
              memory = "string"
            }
            volumeMounts = [
              {
                mountPath = "string"
                volumeName = "string"
              }
            ]
          }
        ]
        initContainers = [
          {
            args = [
              "string"
            ]
            command = [
              "string"
            ]
            env = [
              {
                name = "string"
                secretRef = "string"
                value = "string"
              }
            ]
            image = "string"
            name = "string"
            resources = {
              cpu = "decimal-as-string"
              memory = "string"
            }
            volumeMounts = [
              {
                mountPath = "string"
                volumeName = "string"
              }
            ]
          }
        ]
        revisionSuffix = "string"
        scale = {
          maxReplicas = int
          minReplicas = int
          rules = [
            {
              azureQueue = {
                auth = [
                  {
                    secretRef = "string"
                    triggerParameter = "string"
                  }
                ]
                queueLength = int
                queueName = "string"
              }
              custom = {
                auth = [
                  {
                    secretRef = "string"
                    triggerParameter = "string"
                  }
                ]
                metadata = {
                  {customized property} = "string"
                }
                type = "string"
              }
              http = {
                auth = [
                  {
                    secretRef = "string"
                    triggerParameter = "string"
                  }
                ]
                metadata = {
                  {customized property} = "string"
                }
              }
              name = "string"
              tcp = {
                auth = [
                  {
                    secretRef = "string"
                    triggerParameter = "string"
                  }
                ]
                metadata = {
                  {customized property} = "string"
                }
              }
            }
          ]
        }
        volumes = [
          {
            name = "string"
            storageName = "string"
            storageType = "string"
          }
        ]
      }
      workloadProfileType = "string"
    }
    extendedLocation = {
      name = "string"
      type = "CustomLocation"
    }
  })
}

Valores de propiedad

containerApps

Nombre Descripción Value
type Tipo de recurso "Microsoft.App/containerApps@2022-10-01"
name El nombre del recurso string (obligatorio)

Límite de caracteres: 2-32

Caracteres válidos:
Letras minúsculas, números y guiones.

Comience con una letra y termine con un carácter alfanumérico.
ubicación Ubicación geográfica donde reside el recurso string (obligatorio)
parent_id Para realizar la implementación en un grupo de recursos, use el identificador de ese grupo de recursos. string (obligatorio)
etiquetas Etiquetas del recurso. Diccionario de nombres y valores de etiqueta.
extendedLocation Tipo complejo de la ubicación extendida. ExtendedLocation
identidad identidades administradas para que la aplicación contenedora interactúe con otros servicios de Azure sin mantener secretos ni credenciales en el código. ManagedServiceIdentity
properties Propiedades específicas del recurso containerApp ContainerAppProperties

ExtendedLocation

Nombre Descripción Value
name Nombre de la ubicación extendida. string
type Tipo de la ubicación extendida. "CustomLocation"

ManagedServiceIdentity

Nombre Descripción Value
type Tipo de identidad de servicio administrada (donde se permiten los tipos SystemAssigned y UserAssigned). "SystemAssigned"
"SystemAssigned, UserAssigned"
"UserAssigned" (obligatorio)
identity_ids Conjunto de identidades asignadas por el usuario asociadas al recurso. Las claves del diccionario userAssignedIdentities serán identificadores de recursos de ARM con el formato: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Los valores del diccionario pueden ser objetos vacíos ({}) en las solicitudes. Matriz de identificadores de identidad de usuario.

UserAssignedIdentities

Nombre Descripción Valor
{propiedad personalizada} UserAssignedIdentity

UserAssignedIdentity

Este objeto no contiene ninguna propiedad que se va a establecer durante la implementación. Todas las propiedades son ReadOnly.

ContainerAppProperties

Nombre Descripción Valor
configuración Propiedades de configuración de la aplicación contenedora no con versiones. Configuración
environmentId Identificador de recurso del entorno. string
managedEnvironmentId Desusado. Identificador de recurso del entorno de la aplicación contenedora. string
template Definición de aplicación con versiones de container App. Plantilla
workloadProfileType Tipo de perfil de carga de trabajo que se va a anclar para la ejecución de la aplicación contenedora. string

Configuración

Nombre Descripción Valor
activeRevisionsMode ActiveRevisionsMode controla cómo se controlan las revisiones activas para la aplicación contenedora:
{list} {item} Múltiplo: se pueden activar varias revisiones. {/item} {item} Único: solo una revisión puede estar activa a la vez. Los pesos de revisión no se pueden usar en este modo. Si no se proporciona ningún valor, este es el valor predeterminado. {/item} {/list}
"Múltiplo"
"Single"
dapr Configuración de Dapr para la aplicación contenedora. Dapr
Ingreso Configuraciones de entrada. Entrada
maxInactiveRevisions Opcional. Número máximo de revisiones inactivas que puede tener una aplicación contenedora. int
registries Colección de credenciales de registro de contenedor privado para contenedores usados por la aplicación contenedora RegistryCredentials[]
secrets Colección de secretos usados por una aplicación contenedora Secreto[]

Dapr

Nombre Descripción Value
appId Identificador de aplicación dapr string
appPort Indica a Dapr en qué puerto escucha la aplicación. int
appProtocol Indica a Dapr qué protocolo usa la aplicación. Las opciones válidas son http y grpc. El valor predeterminado es http "grpc"
"http"
enableApiLogging Habilita el registro de API para el sidecar de Dapr bool
enabled Boolean que indica si el coche lateral dapr está habilitado bool
httpMaxRequestSize Aumentar el tamaño máximo del parámetro http y grpc servers del cuerpo de la solicitud en MB para controlar la carga de archivos grandes. El valor predeterminado es 4 MB. int
httpReadBufferSize Tamaño máximo de Dapr del búfer de lectura de encabezado http en KB para controlar al enviar encabezados de varios KB. El valor predeterminado es 65 KB. int
logLevel Establece el nivel de registro del sidecar de Dapr. Los valores permitidos son debug, info, warn, error. El valor predeterminado es info. "depurar"
"error"
"info"
"advertir"

Entrada

Nombre Descripción Valor
allowInsecure Bool indica si se permiten conexiones HTTP a . Si se establece en conexiones HTTP falsas se redirige automáticamente a las conexiones HTTPS. bool
clientCertificateMode Modo de certificado de cliente para la autenticación mTLS. Omitir indica que el servidor quita el certificado de cliente al reenviar. Accept indica que el servidor reenvía el certificado de cliente, pero no requiere un certificado de cliente. Requerir indica que el servidor requiere un certificado de cliente. "accept"
"omitir"
"requerir"
corsPolicy Directiva de CORS para la aplicación contenedora CorsPolicy
customDomains enlaces de dominio personalizados para los nombres de host de Container Apps. CustomDomain[]
exposedPort Puerto expuesto en contenedores para el tráfico TCP desde la entrada int
external Bool indica si la aplicación expone un punto de conexión HTTP externo bool
ipSecurityRestrictions Reglas para restringir la dirección IP entrante. IpSecurityRestrictionRule[]
targetPort Puerto de destino en contenedores para el tráfico de entrada int
traffic Pesos del tráfico para las revisiones de la aplicación TrafficWeight[]
transporte Protocolo de transporte de entrada "auto"
"http"
"http2"
"tcp"

CorsPolicy

Nombre Descripción Valor
allowCredentials permitir credencial o no bool
allowedHeaders encabezados HTTP permitidos string[]
allowedMethods métodos HTTP permitidos string[]
allowedOrigins orígenes permitidos string[] (obligatorio)
exposeHeaders exponer encabezados HTTP string[]
maxAge el cliente de tiempo máximo puede almacenar en caché el resultado int

CustomDomain

Nombre Descripción Valor
bindingType Custom Domain tipo de enlace. "Deshabilitado"
"SniEnabled"
certificateId Identificador de recurso del certificado que se va a enlazar a este nombre de host. string
name Nombre de host. string (obligatorio)

IpSecurityRestrictionRule

Nombre Descripción Valor
action Permitir o denegar reglas para determinar la dirección IP entrante. Nota: Las reglas solo pueden constar de ALL Allow o ALL Deny "Permitir"
"Denegar" (obligatorio)
description Describir la regla de restricción de IP que se envía a la aplicación contenedora. Este campo es opcional. string
ipAddressRange Notación CIDR para que coincida con la dirección IP entrante string (obligatorio)
name Nombre de la regla de restricción de IP. string (obligatorio)

TrafficWeight

Nombre Descripción Valor
etiqueta Asocia una etiqueta de tráfico a una revisión string
latestRevision Indica que el peso del tráfico pertenece a una revisión estable más reciente. bool
revisionName Nombre de una revisión string
peso Peso del tráfico asignado a una revisión int

RegistryCredentials

Nombre Descripción Valor
identidad Una identidad administrada que se va a usar para autenticarse con Azure Container Registry. En el caso de las identidades asignadas por el usuario, use el identificador de recurso de identidad asignado por el usuario completo. En el caso de las identidades asignadas por el sistema, use "system" string
passwordSecretRef Nombre del secreto que contiene la contraseña de inicio de sesión del Registro. string
server Servidor de Container Registry string
username Nombre de usuario de Container Registry string

Secreto

Nombre Descripción Value
name Nombre del secreto. string
value Valor secreto. string

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

Plantilla

Nombre Descripción Value
containers Lista de definiciones de contenedor para la aplicación contenedora. Contenedor[]
initContainers Lista de contenedores especializados que se ejecutan antes de los contenedores de aplicaciones. InitContainer[]
revisionSuffix Sufijo descriptivo que se anexa al nombre de revisión string
scale Propiedades de escalado de la aplicación contenedora. Escala
volumes Lista de definiciones de volumen para la aplicación contenedora. Volumen[]

Contenedor

Nombre Descripción Valor
args Argumentos de comando de inicio de contenedor. string[]
command Comando de inicio del contenedor. string[]
env Variables de entorno de contenedor. EnvironmentVar[]
imagen Etiqueta de imagen de contenedor. string
name Nombre del contenedor personalizado. string
probes Lista de sondeos para el contenedor. ContainerAppProbe[]
resources Requisitos de recursos de contenedor. ContainerResources
volumeMounts Montajes de volumen de contenedor. VolumeMount[]

EnvironmentVar

Nombre Descripción Value
name Nombre de la variable de entorno. string
secretRef Nombre del secreto de la aplicación contenedora del que se va a extraer el valor de la variable de entorno. string
value Valor de variable de entorno no secreto. string

ContainerAppProbe

Nombre Descripción Valor
failureThreshold Se han producido errores consecutivos mínimos para que el sondeo se considere erróneo después de haber realizado correctamente. El valor predeterminado es 3. El valor mínimo es 1. El valor máximo es 10. int
httpGet HTTPGet especifica la solicitud HTTP que se va a realizar. ContainerAppProbeHttpGet
initialDelaySeconds Número de segundos después de que se haya iniciado el contenedor antes de que se inicien los sondeos de ejecución. El valor mínimo es 1. El valor máximo es 60. int
periodSeconds Frecuencia (en segundos) con que se ejecutará el sondeo. El valor predeterminado es de 10 segundos. El valor mínimo es 1. El valor máximo es 240. int
successThreshold Número mínimo de éxitos consecutivos para que el sondeo se considere correcto después de haber producido un error. De manera predeterminada, su valor es 1. Debe ser 1 para la vida y el inicio. El valor mínimo es 1. El valor máximo es 10. int
tcpSocket TCPSocket especifica una acción que implica un puerto TCP. Todavía no se admiten enlaces TCP. ContainerAppProbeTcpSocket
terminationGracePeriodSeconds Duración opcional en segundos que el pod debe finalizar correctamente tras un error de sondeo. El período de gracia es la duración en segundos después de que los procesos que se ejecutan en el pod se envíen una señal de terminación y el tiempo en que los procesos se detengan forzosamente con una señal de eliminación. Establezca este valor más largo que el tiempo de limpieza esperado para el proceso. Si este valor es nulo, se usará la terminación del podGracePeriodSeconds. De lo contrario, este valor invalida el valor proporcionado por la especificación del pod. El valor debe ser entero no negativo. El valor cero indica que se detiene inmediatamente a través de la señal de eliminación (sin oportunidad de apagar). Se trata de un campo alfa y requiere habilitar la puerta de características ProbeTerminationGracePeriod. El valor máximo es de 3600 segundos (1 hora) int
timeoutSeconds Número de segundos después del cual se agota el tiempo de espera del sondeo. El valor predeterminado es 1 segundo. El valor mínimo es 1. El valor máximo es 240. int
tipo Tipo de sondeo. "Vida"
"Preparación"
"Inicio"

ContainerAppProbeHttpGet

Nombre Descripción Valor
host Nombre de host al que conectarse, el valor predeterminado es la dirección IP del pod. Probablemente quiera establecer "Host" en httpHeaders en su lugar. string
httpHeaders Encabezados personalizados que se van a establecer en la solicitud. HTTP permite encabezados repetidos. ContainerAppProbeHttpGetHttpHeadersItem[]
path Ruta de acceso al acceso en el servidor HTTP. string
port Nombre o número del puerto al que se va a acceder en el contenedor. El número debe estar en el intervalo de 1 a 65535. El nombre debe ser un IANA_SVC_NAME. int (obligatorio)
scheme Esquema que se va a usar para conectarse al host. El valor predeterminado es HTTP. "HTTP"
"HTTPS"

ContainerAppProbeHttpGetHttpHeadersItem

Nombre Descripción Value
name Nombre del campo de encabezado string (obligatorio)
value Valor del campo de encabezado string (obligatorio)

ContainerAppProbeTcpSocket

Nombre Descripción Valor
host Opcional: el nombre de host al que conectarse, tiene como valor predeterminado la dirección IP del pod. string
port Número o nombre del puerto al que se va a acceder en el contenedor. El número debe estar en el intervalo de 1 a 65535. El nombre debe ser un IANA_SVC_NAME. int (obligatorio)

ContainerResources

Nombre Descripción Valor
cpu CPU necesaria en núcleos, por ejemplo, 0,5 Especifique un valor decimal como una cadena. int o json decimal
memoria Memoria necesaria, por ejemplo, "250 Mb" string

VolumeMount

Nombre Descripción Valor
mountPath Ruta de acceso dentro del contenedor en el que se debe montar el volumen. No debe contener ':'. string
volumeName Debe coincidir con el nombre de un volumen. string

InitContainer

Nombre Descripción Valor
args Argumentos de comando de inicio de contenedor. string[]
command Comando de inicio del contenedor. string[]
env Variables de entorno de contenedor. EnvironmentVar[]
imagen Etiqueta de imagen de contenedor. string
name Nombre del contenedor personalizado. string
resources Requisitos de recursos de contenedor. ContainerResources
volumeMounts Montajes de volúmenes de contenedor. VolumeMount[]

Escala

Nombre Descripción Valor
maxReplicas Opcional. Número máximo de réplicas de contenedor. El valor predeterminado es 10 si no se establece. int
minReplicas Opcional. Número mínimo de réplicas de contenedor. int
reglas Reglas de escalado. ScaleRule[]

ScaleRule

Nombre Descripción Valor
azureQueue Escalado basado en cola de Azure. QueueScaleRule
custom Regla de escalado personalizada. CustomScaleRule
http Escalado basado en solicitudes HTTP. HttpScaleRule
name Nombre de la regla de escalado string
tcp Escalado basado en solicitudes TCP. TcpScaleRule

QueueScaleRule

Nombre Descripción Valor
auth Secretos de autenticación para la regla de escalado de colas. ScaleRuleAuth[]
queueLength Longitud de la cola. int
queueName Nombre de la cola. string

ScaleRuleAuth

Nombre Descripción Valor
secretRef Nombre del secreto de la aplicación contenedora del que se va a extraer los parámetros de autenticación. string
triggerParameter Parámetro de desencadenador que usa el secreto string

CustomScaleRule

Nombre Descripción Valor
auth Secretos de autenticación para la regla de escalado personalizada. ScaleRuleAuth[]
metadata Propiedades de metadatos para describir la regla de escalado personalizada. CustomScaleRuleMetadata
tipo Tipo de la regla de escalado personalizada
por ejemplo: azure-servicebus, redis, etc.
string

CustomScaleRuleMetadata

Nombre Descripción Valor
{propiedad personalizada} string

HttpScaleRule

Nombre Descripción Valor
auth Secretos de autenticación para la regla de escalado personalizada. ScaleRuleAuth[]
metadata Propiedades de metadatos para describir la regla de escalado http. HttpScaleRuleMetadata

HttpScaleRuleMetadata

Nombre Descripción Valor
{propiedad personalizada} string

TcpScaleRule

Nombre Descripción Valor
auth Secretos de autenticación para la regla de escalado tcp. ScaleRuleAuth[]
metadata Propiedades de metadatos para describir la regla de escalado tcp. TcpScaleRuleMetadata

TcpScaleRuleMetadata

Nombre Descripción Valor
{propiedad personalizada} string

Volumen

Nombre Descripción Value
name Nombre del volumen. string
storageName Nombre del recurso de almacenamiento. No es necesario proporcionar emptyDir. string
storageType Tipo de almacenamiento para el volumen. Si no se proporciona, use EmptyDir. "AzureFile"
"EmptyDir"