Share via


Microsoft.App containerApps

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@2023-11-02-preview' = {
  name: 'string'
  location: 'string'
  tags: {
    tagName1: 'tagValue1'
    tagName2: 'tagValue2'
  }
  extendedLocation: {
    name: 'string'
    type: 'CustomLocation'
  }
  identity: {
    type: 'string'
    userAssignedIdentities: {
      {customized property}: {}
    }
  }
  managedBy: 'string'
  properties: {
    configuration: {
      activeRevisionsMode: 'string'
      dapr: {
        appId: 'string'
        appPort: int
        appProtocol: 'string'
        enableApiLogging: bool
        enabled: bool
        httpMaxRequestSize: int
        httpReadBufferSize: int
        logLevel: 'string'
      }
      ingress: {
        additionalPortMappings: [
          {
            exposedPort: int
            external: bool
            targetPort: int
          }
        ]
        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'
          }
        ]
        stickySessions: {
          affinity: 'string'
        }
        targetPort: int
        targetPortHttpScheme: 'string'
        traffic: [
          {
            label: 'string'
            latestRevision: bool
            revisionName: 'string'
            weight: int
          }
        ]
        transport: 'string'
      }
      maxInactiveRevisions: int
      registries: [
        {
          identity: 'string'
          passwordSecretRef: 'string'
          server: 'string'
          username: 'string'
        }
      ]
      secrets: [
        {
          identity: 'string'
          keyVaultUrl: 'string'
          name: 'string'
          value: 'string'
        }
      ]
      service: {
        type: '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'
              subPath: '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'
              subPath: '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'
              }
            }
          }
        ]
      }
      serviceBinds: [
        {
          clientType: 'string'
          customizedKeys: {
            {customized property}: 'string'
          }
          name: 'string'
          serviceId: 'string'
        }
      ]
      terminationGracePeriodSeconds: int
      volumes: [
        {
          mountOptions: 'string'
          name: 'string'
          secrets: [
            {
              path: 'string'
              secretRef: 'string'
            }
          ]
          storageName: 'string'
          storageType: 'string'
        }
      ]
    }
    workloadProfileName: '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
managedBy Identificador de recurso completo del recurso que administra este recurso. Indica si otro recurso de Azure administra este recurso. Si está presente, la implementación del modo completo no eliminará el recurso si se quita de la plantilla, ya que otro recurso lo administra. string
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 establezca 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
workloadProfileName Nombre del 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[]
service Aplicación contenedora para que sea un contenedor de desarrollo App Service Servicio

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
additionalPortMappings Configuración para exponer puertos adicionales en la aplicación contenedora IngressPortMapping[]
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 indica si la aplicación expone un punto de conexión HTTP externo bool
ipSecurityRestrictions Reglas para restringir la dirección IP entrante. IpSecurityRestrictionRule[]
stickySessions Sesiones permanentes para el modo de revisión única IngressStickySessions
targetPort Puerto de destino en contenedores para el tráfico de entrada int
targetPortHttpScheme Si una aplicación http escucha en http o https 'http'
'https'
traffic Pesos del tráfico para las revisiones de la aplicación TrafficWeight[]
transporte Protocolo de transporte de entrada 'auto'
'http'
'http2'
'tcp'

IngressPortMapping

Nombre Descripción Valor
exposedPort Especifica el puerto expuesto para el puerto de destino. Si no se especifica, el valor predeterminado es el puerto de destino. int
external Especifica si el puerto de la aplicación es accesible fuera del entorno. bool (obligatorio)
targetPort Especifica el contenedor del usuario del puerto en el que escucha int (obligatorio)

CorsPolicy

Nombre Descripción Valor
allowCredentials Especifica si el recurso permite credenciales. bool
allowedHeaders Especifica el contenido del encabezado access-control-allow-headers. string[]
allowedMethods Especifica el contenido del encabezado access-control-allow-methods. string[]
allowedOrigins Especifica el contenido del encabezado access-control-allow-origins. string[] (obligatorio)
exposeHeaders Especifica el contenido del encabezado access-control-expose-headers. string[]
maxAge Especifica el contenido del encabezado access-control-max-age. 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. Debe existir en el entorno administrado. 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)

IngressStickySessions

Nombre Descripción Valor
affinity Afinidad de sesión pegajosa 'none'
'sticky'

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 Valor
identidad Identificador de recurso de una identidad administrada para autenticarse con Azure Key Vault o sistema para usar una identidad asignada por el sistema. string
keyVaultUrl Dirección URL de Azure Key Vault que apunta al secreto al que hace referencia la aplicación contenedora. string
name Nombre del secreto. string
value Valor secreto. string

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

Servicio

Nombre Descripción Value
type Tipo de servicio Dev ContainerApp string (obligatorio)

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
serviceBinds Lista de servicios de aplicaciones de contenedor enlazados a la aplicación ServiceBind[]
terminationGracePeriodSeconds Duración opcional en segundos que la instancia de la aplicación contenedora debe finalizar correctamente. 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). Si este valor es nulo, se usa el período de gracia predeterminado. Establezca este valor más largo que el tiempo de limpieza esperado para el proceso. El valor predeterminado es 30 segundos. int
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
Subtrazado Ruta de acceso dentro del volumen desde el que se debe montar el volumen del contenedor. El valor predeterminado es "" (raíz del volumen). 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 desde el que se van 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

ServiceBind

Nombre Descripción Valor
clientType Tipo del cliente que se va a usar para conectarse al servicio string
customizedKeys Claves personalizadas para personalizar los valores insertados en la aplicación ServiceBindCustomizedKeys
name Nombre del enlace de servicio string
serviceId Identificador de recurso del servicio de destino string

ServiceBindCustomizedKeys

Nombre Descripción Valor
{propiedad personalizada} string

Volumen

Nombre Descripción Valor
mountOptions Opciones de montaje que se usan al montar el recurso compartido de archivos de Azure o el recurso compartido de archivos NFS de Azure. Debe ser una cadena separada por comas. string
name Nombre del volumen. string
secrets Lista de secretos que se van a agregar en el volumen. Si no se proporciona ningún secreto, todos los secretos de la colección se agregarán al volumen. SecretVolumeItem[]
storageName Nombre del recurso de almacenamiento. No es necesario proporcionar emptyDir y secret. string
storageType Tipo de almacenamiento para el volumen. Si no se proporciona, use EmptyDir. "AzureFile"
'EmptyDir'
'NfsAzureFile'
'Secreto'

SecretVolumeItem

Nombre Descripción Value
path Ruta de acceso al secreto del proyecto al que. Si no se proporciona ninguna ruta de acceso, el valor predeterminado de la ruta de acceso es el nombre del secreto que aparece en secretRef. string
secretRef Nombre del secreto de la aplicación contenedora del que se va a extraer el valor del secreto. string

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 contenedora básica a partir de una 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 contenedora 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 contenedora 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 contenedora 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": "2023-11-02-preview",
  "name": "string",
  "location": "string",
  "tags": {
    "tagName1": "tagValue1",
    "tagName2": "tagValue2"
  },
  "extendedLocation": {
    "name": "string",
    "type": "CustomLocation"
  },
  "identity": {
    "type": "string",
    "userAssignedIdentities": {
      "{customized property}": {}
    }
  },
  "managedBy": "string",
  "properties": {
    "configuration": {
      "activeRevisionsMode": "string",
      "dapr": {
        "appId": "string",
        "appPort": "int",
        "appProtocol": "string",
        "enableApiLogging": "bool",
        "enabled": "bool",
        "httpMaxRequestSize": "int",
        "httpReadBufferSize": "int",
        "logLevel": "string"
      },
      "ingress": {
        "additionalPortMappings": [
          {
            "exposedPort": "int",
            "external": "bool",
            "targetPort": "int"
          }
        ],
        "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"
          }
        ],
        "stickySessions": {
          "affinity": "string"
        },
        "targetPort": "int",
        "targetPortHttpScheme": "string",
        "traffic": [
          {
            "label": "string",
            "latestRevision": "bool",
            "revisionName": "string",
            "weight": "int"
          }
        ],
        "transport": "string"
      },
      "maxInactiveRevisions": "int",
      "registries": [
        {
          "identity": "string",
          "passwordSecretRef": "string",
          "server": "string",
          "username": "string"
        }
      ],
      "secrets": [
        {
          "identity": "string",
          "keyVaultUrl": "string",
          "name": "string",
          "value": "string"
        }
      ],
      "service": {
        "type": "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",
              "subPath": "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",
              "subPath": "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"
              }
            }
          }
        ]
      },
      "serviceBinds": [
        {
          "clientType": "string",
          "customizedKeys": {
            "{customized property}": "string"
          },
          "name": "string",
          "serviceId": "string"
        }
      ],
      "terminationGracePeriodSeconds": "int",
      "volumes": [
        {
          "mountOptions": "string",
          "name": "string",
          "secrets": [
            {
              "path": "string",
              "secretRef": "string"
            }
          ],
          "storageName": "string",
          "storageType": "string"
        }
      ]
    },
    "workloadProfileName": "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 "2023-11-02-preview"
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
managedBy Identificador de recurso completo del recurso que administra este recurso. Indica si otro recurso de Azure administra este recurso. Si está presente, la implementación en modo completo no eliminará el recurso si se quita de la plantilla, ya que está administrado por otro recurso. string
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
workloadProfileName Nombre del 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 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[]
service Aplicación contenedora para que sea un contenedor de desarrollo App Service Servicio

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
additionalPortMappings Configuración para exponer puertos adicionales en la aplicación contenedora IngressPortMapping[]
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[]
stickySessions Sesiones permanentes para el modo de revisión única IngressStickySessions
targetPort Puerto de destino en contenedores para el tráfico desde la entrada int
targetPortHttpScheme Si una aplicación http escucha en http o https 'http'
'https'
traffic Pesos de tráfico para las revisiones de la aplicación TrafficWeight[]
transporte Protocolo de transporte de entrada 'auto'
'http'
'http2'
'tcp'

EntradaPortMapping

Nombre Descripción Valor
exposedPort Especifica el puerto expuesto para el puerto de destino. Si no se especifica, el valor predeterminado es el puerto de destino. int
external Especifica si el puerto de la aplicación es accesible fuera del entorno. bool (obligatorio)
targetPort Especifica el contenedor del usuario del puerto en el que escucha. int (obligatorio)

CorsPolicy

Nombre Descripción Valor
allowCredentials Especifica si el recurso permite credenciales. bool
allowedHeaders Especifica el contenido del encabezado access-control-allow-headers. string[]
allowedMethods Especifica el contenido del encabezado access-control-allow-methods. string[]
allowedOrigins Especifica el contenido del encabezado access-control-allow-origins. string[] (obligatorio)
exposeHeaders Especifica el contenido del encabezado access-control-expose-headers. string[]
maxAge Especifica el contenido del encabezado access-control-max-age. 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. Debe existir en el entorno administrado. 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)

IngressStickySessions

Nombre Descripción Valor
affinity Afinidad de sesión pegajosa 'none'
'sticky'

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 Valor
identidad Identificador de recurso de una identidad administrada para autenticarse con Azure Key Vault o sistema para usar una identidad asignada por el sistema. string
keyVaultUrl Dirección URL de Azure Key Vault que apunta al secreto al que hace referencia la aplicación contenedora. string
name Nombre del secreto. string
value Valor secreto. string

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

Servicio

Nombre Descripción Value
type Tipo de servicio Dev ContainerApp string (obligatorio)

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
serviceBinds Lista de servicios de aplicaciones de contenedor enlazados a la aplicación ServiceBind[]
terminationGracePeriodSeconds Duración opcional en segundos que la instancia de la aplicación contenedora debe finalizar correctamente. 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). Si este valor es nulo, se usa el período de gracia predeterminado. Establezca este valor más largo que el tiempo de limpieza esperado para el proceso. El valor predeterminado es 30 segundos. int
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 Errores consecutivos mínimos para que el sondeo se considere erróneo después de que se haya 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 que se haya producido un error. De manera predeterminada, su valor es 1. Debe ser 1 para la ejecución 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 de 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"
'Startup'

ContainerAppProbeHttpGet

Nombre Descripción Valor
host El nombre de host al que se va a conectar, tiene como valor predeterminado 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
Subtrazado Ruta de acceso dentro del volumen desde el que se debe montar el volumen del contenedor. El valor predeterminado es "" (raíz del volumen). 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 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

ServiceBind

Nombre Descripción Valor
clientType Tipo del cliente que se va a usar para conectarse al servicio string
customizedKeys Claves personalizadas para personalizar los valores insertados en la aplicación ServiceBindCustomizedKeys
name Nombre del enlace de servicio string
serviceId Identificador de recurso del servicio de destino string

ServiceBindCustomizedKeys

Nombre Descripción Valor
{propiedad personalizada} string

Volumen

Nombre Descripción Valor
mountOptions Opciones de montaje que se usan al montar el recurso compartido de archivos de Azure o el recurso compartido de archivos NFS de Azure. Debe ser una cadena separada por comas. string
name Nombre del volumen. string
secrets Lista de secretos que se van a agregar en el volumen. Si no se proporciona ningún secreto, todos los secretos de la colección se agregarán al volumen. SecretVolumeItem[]
storageName Nombre del recurso de almacenamiento. No es necesario proporcionar emptyDir y secret. string
storageType Tipo de almacenamiento para el volumen. Si no se proporciona, use EmptyDir. "AzureFile"
'EmptyDir'
'NfsAzureFile'
'Secreto'

SecretVolumeItem

Nombre Descripción Value
path Ruta de acceso al secreto del proyecto al que. Si no se proporciona ninguna ruta de acceso, el valor predeterminado de la ruta de acceso es el nombre del secreto que aparece en secretRef. string
secretRef Nombre del secreto de la aplicación contenedora del que se va a extraer el valor del secreto. string

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 contenedora básica a partir de una 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 contenedora 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 contenedora 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 contenedora 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@2023-11-02-preview"
  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 = {
          additionalPortMappings = [
            {
              exposedPort = int
              external = bool
              targetPort = int
            }
          ]
          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"
            }
          ]
          stickySessions = {
            affinity = "string"
          }
          targetPort = int
          targetPortHttpScheme = "string"
          traffic = [
            {
              label = "string"
              latestRevision = bool
              revisionName = "string"
              weight = int
            }
          ]
          transport = "string"
        }
        maxInactiveRevisions = int
        registries = [
          {
            identity = "string"
            passwordSecretRef = "string"
            server = "string"
            username = "string"
          }
        ]
        secrets = [
          {
            identity = "string"
            keyVaultUrl = "string"
            name = "string"
            value = "string"
          }
        ]
        service = {
          type = "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"
                subPath = "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"
                subPath = "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"
                }
              }
            }
          ]
        }
        serviceBinds = [
          {
            clientType = "string"
            customizedKeys = {
              {customized property} = "string"
            }
            name = "string"
            serviceId = "string"
          }
        ]
        terminationGracePeriodSeconds = int
        volumes = [
          {
            mountOptions = "string"
            name = "string"
            secrets = [
              {
                path = "string"
                secretRef = "string"
              }
            ]
            storageName = "string"
            storageType = "string"
          }
        ]
      }
      workloadProfileName = "string"
    }
    extendedLocation = {
      name = "string"
      type = "CustomLocation"
    }
    managedBy = "string"
  })
}

Valores de propiedad

containerApps

Nombre Descripción Value
type Tipo de recurso "Microsoft.App/containerApps@2023-11-02-preview"
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
managedBy Identificador de recurso completo del recurso que administra este recurso. Indica si otro recurso de Azure administra este recurso. Si está presente, la implementación en modo completo no eliminará el recurso si se quita de la plantilla, ya que está administrado por otro recurso. string
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 establezca 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
workloadProfileName Nombre del 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}
"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 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[]
service Aplicación contenedora para que sea un contenedor de desarrollo App Service Servicio

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
additionalPortMappings Configuración para exponer puertos adicionales en la aplicación contenedora IngressPortMapping[]
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[]
stickySessions Sesiones permanentes para el modo de revisión única IngressStickySessions
targetPort Puerto de destino en contenedores para el tráfico de entrada int
targetPortHttpScheme Si una aplicación http escucha en http o https "http"
"https"
traffic Pesos del tráfico para las revisiones de la aplicación TrafficWeight[]
transporte Protocolo de transporte de entrada "auto"
"http"
"http2"
"tcp"

IngressPortMapping

Nombre Descripción Valor
exposedPort Especifica el puerto expuesto para el puerto de destino. Si no se especifica, el valor predeterminado es el puerto de destino. int
external Especifica si el puerto de la aplicación es accesible fuera del entorno. bool (obligatorio)
targetPort Especifica el contenedor del usuario del puerto en el que escucha int (obligatorio)

CorsPolicy

Nombre Descripción Valor
allowCredentials Especifica si el recurso permite credenciales. bool
allowedHeaders Especifica el contenido del encabezado access-control-allow-headers. string[]
allowedMethods Especifica el contenido del encabezado access-control-allow-methods. string[]
allowedOrigins Especifica el contenido del encabezado access-control-allow-origins. string[] (obligatorio)
exposeHeaders Especifica el contenido del encabezado access-control-expose-headers. string[]
maxAge Especifica el contenido del encabezado access-control-max-age. 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. Debe existir en el entorno administrado. 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)

IngressStickySessions

Nombre Descripción Valor
affinity Afinidad de sesión pegajosa "none"
"pegajoso"

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 Valor
identidad Identificador de recurso de una identidad administrada para autenticarse con Azure Key Vault o sistema para usar una identidad asignada por el sistema. string
keyVaultUrl Dirección URL de Azure Key Vault que apunta al secreto al que hace referencia la aplicación contenedora. string
name Nombre del secreto. string
value Valor secreto. string

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

Servicio

Nombre Descripción Value
type Tipo de servicio Dev ContainerApp string (obligatorio)

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 para la aplicación contenedora. Escala
serviceBinds Lista de servicios de aplicaciones de contenedor enlazados a la aplicación ServiceBind[]
terminationGracePeriodSeconds Duración opcional en segundos que la instancia de la aplicación contenedora debe finalizar correctamente. 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). Si este valor es nulo, se usa el período de gracia predeterminado. Establezca este valor más largo que el tiempo de limpieza esperado para el proceso. El valor predeterminado es 30 segundos. int
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 volúmenes 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 Errores consecutivos mínimos para que el sondeo se considere erróneo después de que se haya 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 que se haya producido un error. De manera predeterminada, su valor es 1. Debe ser 1 para la ejecución 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 de 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 El nombre de host al que se va a conectar, tiene como valor predeterminado 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 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
Subtrazado Ruta de acceso dentro del volumen desde el que se debe montar el volumen del contenedor. El valor predeterminado es "" (raíz del volumen). 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 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

ServiceBind

Nombre Descripción Valor
clientType Tipo del cliente que se va a usar para conectarse al servicio string
customizedKeys Claves personalizadas para personalizar los valores insertados en la aplicación ServiceBindCustomizedKeys
name Nombre del enlace de servicio string
serviceId Identificador de recurso del servicio de destino string

ServiceBindCustomizedKeys

Nombre Descripción Valor
{propiedad personalizada} string

Volumen

Nombre Descripción Valor
mountOptions Opciones de montaje que se usan al montar el recurso compartido de archivos de Azure o el recurso compartido de archivos NFS de Azure. Debe ser una cadena separada por comas. string
name Nombre del volumen. string
secrets Lista de secretos que se van a agregar en el volumen. Si no se proporciona ningún secreto, todos los secretos de la colección se agregarán al volumen. SecretVolumeItem[]
storageName Nombre del recurso de almacenamiento. No es necesario proporcionar emptyDir y secret. string
storageType Tipo de almacenamiento para el volumen. Si no se proporciona, use EmptyDir. "AzureFile"
"EmptyDir"
"NfsAzureFile"
"Secreto"

SecretVolumeItem

Nombre Descripción Value
path Ruta de acceso al secreto del proyecto al que. Si no se proporciona ninguna ruta de acceso, el valor predeterminado de la ruta de acceso es el nombre del secreto que aparece en secretRef. string
secretRef Nombre del secreto de la aplicación contenedora desde el que se va a extraer el valor del secreto. string