Microsoft.App containerApps

Definição de recurso do Bicep

O tipo de recurso containerApps pode ser implantado com operações direcionadas:

Para obter uma lista das propriedades alteradas em cada versão da API, consulte log de alterações.

Formato de recurso

Para criar um recurso Microsoft.App/containerApps, adicione o Bicep a seguir ao modelo.

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 propriedade

containerApps

Nome Descrição Valor
name O nome do recurso cadeia de caracteres (obrigatório)

Limite de caracteres: 2-32

Caracteres válidos:
Letras minúsculas, números e hifens.

Comece com uma letra e termine com um caractere alfanumérico.
local A localização geográfica em que o recurso reside cadeia de caracteres (obrigatório)
marcas Marcas de recurso. Dicionário de nomes e valores de marcas. Confira Marcas em modelos
extendedLocation O tipo complexo do local estendido. ExtendedLocation
identidade identidades gerenciadas para o Aplicativo de Contêiner interagir com outros serviços do Azure sem manter segredos ou credenciais no código. ManagedServiceIdentity
managedBy A ID de recurso totalmente qualificada do recurso que gerencia esse recurso. Indica se esse recurso é gerenciado por outro recurso do Azure. Se isso estiver presente, a implantação do modo completo não excluirá o recurso se ele for removido do modelo, pois ele é gerenciado por outro recurso. string
properties Propriedades específicas do recurso ContainerApp ContainerAppProperties

ExtendedLocation

Nome Descrição Valor
name O nome do local estendido. string
type O tipo do local estendido. 'CustomLocation'

ManagedServiceIdentity

Nome Descrição Valor
tipo Tipo de identidade de serviço gerenciada (em que os tipos SystemAssigned e UserAssigned são permitidos). 'None'
'SystemAssigned'
'SystemAssigned,UserAssigned'
'UserAssigned' (obrigatório)
userAssignedIdentities O conjunto de identidades atribuídas pelo usuário associadas ao recurso. As chaves do dicionário userAssignedIdentities serão IDs de recurso do ARM no formato: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Os valores do dicionário podem ser objetos vazios ({}) em solicitações. UserAssignedIdentities

UserAssignedIdentities

Nome Descrição Valor
{propriedade personalizada} UserAssignedIdentity

UserAssignedIdentity

Esse objeto não contém nenhuma propriedade a ser definida durante a implantação. Todas as propriedades são ReadOnly.

ContainerAppProperties

Nome Descrição Valor
configuração Propriedades de configuração do Aplicativo de Contêiner não com controle de versão. Configuration
environmentId ID do recurso do ambiente. string
managedEnvironmentId Preterido. ID do recurso do ambiente do Aplicativo de Contêiner. string
template Definição de aplicativo com controle de versão do Aplicativo de Contêiner. Modelo
workloadProfileName Nome do perfil de carga de trabalho a ser fixado para execução do aplicativo de contêiner. string

Configuração

Nome Descrição Valor
activeRevisionsMode ActiveRevisionsMode controla como as revisões ativas são tratadas para o aplicativo contêiner:
{list} {item} Múltiplo: várias revisões podem estar ativas. {/item} {item} Único: apenas uma revisão pode estar ativa por vez. Os pesos de revisão não podem ser usados nesse modo. Se nenhum valor for fornecido, esse será o padrão. {/item} {/list}
'Múltiplo'
'Single'
dapr Configuração do Dapr para o Aplicativo de Contêiner. Dapr
Entrada Configurações de entrada. Entrada
maxInactiveRevisions Opcional. Máximo de revisões inativas que um Aplicativo de Contêiner pode ter. INT
registries Coleção de credenciais de registro de contêiner privado para contêineres usados pelo aplicativo contêiner RegistryCredentials[]
segredos Coleção de segredos usados por um aplicativo de contêiner Secret[]
serviço Aplicativo de contêiner para ser um contêiner de desenvolvimento Serviço de Aplicativo Serviço

Dapr

Nome Descrição Valor
appId Identificador de aplicativo dapr string
appPort Informa ao Dapr em qual porta seu aplicativo está escutando INT
appProtocol Informa ao Dapr qual protocolo seu aplicativo está usando. As opções válidas são http e grpc. O padrão é http 'grpc'
'http'
enableApiLogging Habilita o registro em log de API para o sidecar do Dapr bool
Habilitado Booliano indicando se o carro lateral do Dapr está habilitado bool
httpMaxRequestSize Aumento do tamanho máximo do parâmetro de servidores http e grpc do corpo da solicitação em MB para lidar com o carregamento de arquivos grandes. O padrão é 4 MB. INT
httpReadBufferSize Tamanho máximo do dapr do buffer de leitura de cabeçalho http em KB a ser manipulado ao enviar cabeçalhos de vários KB. O padrão é 65 KB. INT
logLevel Define o nível de log para o sidecar do Dapr. Os valores permitidos são depuração, informações, aviso, erro. O padrão são as informações. 'debug'
'error'
'info'
'avisar'

Entrada

Nome Descrição Valor
additionalPortMappings Configurações para expor portas adicionais no aplicativo de contêiner IngressPortMapping[]
allowInsecure Bool indicando se as conexões HTTP com são permitidas. Se definido como conexões HTTP falsas, serão redirecionados automaticamente para conexões HTTPS bool
clientCertificateMode Modo de certificado do cliente para autenticação mTLS. Ignorar indica que o servidor descarta o certificado do cliente no encaminhamento. Accept indica que o servidor encaminha o certificado do cliente, mas não requer um certificado do cliente. Exigir indica que o servidor requer um certificado do cliente. 'accept'
'ignore'
'require'
corsPolicy Política cors para aplicativo de contêiner CorsPolicy
customDomains associações de domínio personalizadas para nomes de host dos Aplicativos de Contêiner. CustomDomain[]
exposedPort Porta exposta em contêineres para tráfego TCP de entrada INT
external Bool indicando se o aplicativo expõe um ponto de extremidade http externo bool
ipSecurityRestrictions Regras para restringir o endereço IP de entrada. IpSecurityRestrictionRule[]
stickySessions Sessões autoadesivas para o modo de revisão única IngressStickySessions
targetPort Porta de destino em contêineres para tráfego de entrada INT
targetPortHttpScheme Se um aplicativo http escuta em http ou https 'http'
'https'
traffic Pesos de tráfego para revisões do aplicativo TrafficWeight[]
transporte Protocolo de transporte de entrada 'auto'
'http'
'http2'
'tcp'

IngressPortMapping

Nome Descrição Valor
exposedPort Especifica a porta exposta para a porta de destino. Se não for especificado, o padrão será a porta de destino INT
external Especifica se a porta do aplicativo está acessível fora do ambiente bool (obrigatório)
targetPort Especifica a porta em que o contêiner do usuário escuta int (obrigatório)

CorsPolicy

Nome Descrição Valor
allowCredentials Especifica se o recurso permite credenciais bool
allowedHeaders Especifica o conteúdo do cabeçalho access-control-allow-headers string[]
allowedMethods Especifica o conteúdo do cabeçalho access-control-allow-methods string[]
allowedOrigins Especifica o conteúdo do cabeçalho access-control-allow-origins string[] (obrigatório)
exposeHeaders Especifica o conteúdo do cabeçalho access-control-expose-headers string[]
maxAge Especifica o conteúdo do cabeçalho access-control-max-age INT

CustomDomain

Nome Descrição Valor
Bindingtype Custom Domain tipo de associação. 'Desabilitado'
'SniEnabled'
certificateId ID do recurso do Certificado a ser associado a esse nome de host. Deve existir no Ambiente Gerenciado. string
name Hostname. cadeia de caracteres (obrigatório)

IpSecurityRestrictionRule

Nome Descrição Valor
ação Permitir ou negar regras para determinar o IP de entrada. Observação: as regras só podem consistir em ALL Allow ou ALL Deny 'Allow'
'Deny' (obrigatório)
descrição Descreva a regra de restrição de IP que está sendo enviada para o contêiner-aplicativo. Esse é um campo opcional. string
ipAddressRange Notação CIDR para corresponder ao endereço IP de entrada cadeia de caracteres (obrigatório)
name Nome da regra de restrição de IP. cadeia de caracteres (obrigatório)

IngressStickySessions

Nome Descrição Valor
affinity Afinidade de sessão autoadesiva 'none'
'sticky'

TrafficWeight

Nome Descrição Valor
label Associa um rótulo de tráfego a uma revisão string
latestRevision Indica que o peso do tráfego pertence a uma revisão estável mais recente bool
revisionName Nome de uma revisão string
peso Peso do tráfego atribuído a uma revisão INT

RegistryCredentials

Nome Descrição Valor
identidade Uma Identidade Gerenciada a ser usada para autenticar com Registro de Contêiner do Azure. Para identidades atribuídas pelo usuário, use a ID completa do recurso de identidade atribuída pelo usuário. Para identidades atribuídas pelo sistema, use 'system' string
passwordSecretRef O nome do Segredo que contém a senha de logon do Registro string
Servidor Servidor do Registro de Contêiner string
Nome de Usuário Nome de usuário do Registro de Contêiner string

Segredo

Nome Descrição Valor
identidade ID de recurso de uma identidade gerenciada para autenticar com o Azure Key Vault ou Sistema para usar uma identidade atribuída pelo sistema. string
keyVaultUrl A URL Key Vault do Azure apontando para o segredo referenciado pelo aplicativo de contêiner. string
name Nome do Segredo. string
value Valor do Segredo. string

Restrições:
Valor confidencial. Passe como um parâmetro seguro.

Serviço

Nome Descrição Valor
tipo Tipo de serviço Dev ContainerApp cadeia de caracteres (obrigatório)

Modelo

Nome Descrição Valor
containers Lista de definições de contêiner para o Aplicativo de Contêiner. Contêiner[]
initContainers Lista de contêineres especializados executados antes dos contêineres de aplicativo. InitContainer[]
revisionSuffix Sufixo amigável que é acrescentado ao nome de revisão string
scale Dimensionamento de propriedades para o Aplicativo de Contêiner. Escala
serviceBinds Lista de serviços de aplicativos de contêiner associados ao aplicativo ServiceBind[]
terminationGracePeriodSeconds Duração opcional em segundos que a Instância do Aplicativo de Contêiner precisa terminar normalmente. O valor deve ser um inteiro não negativo. O valor zero indica parar imediatamente por meio do sinal de encerramento (sem oportunidade de desligar). Se esse valor for zero, o período de carência padrão será usado. Defina esse valor por mais tempo do que o tempo de limpeza esperado para seu processo. O padrão é 30 segundos. INT
volumes Lista de definições de volume para o Aplicativo de Contêiner. Volume[]

Contêiner

Nome Descrição Valor
args Argumentos de comando de início do contêiner. string[]
. Comando de início do contêiner. string[]
env Variáveis de ambiente de contêiner. EnvironmentVar[]
image Marca de imagem de contêiner. string
name Nome do contêiner personalizado. string
investigações Lista de investigações para o contêiner. ContainerAppProbe[]
recursos Requisitos de recursos do contêiner. ContainerResources
volumeMounts Montagens de volume de contêiner. VolumeMount[]

EnvironmentVar

Nome Descrição Valor
name Nome da variável de ambiente. string
secretRef Nome do segredo do Aplicativo de Contêiner do qual extrair o valor da variável de ambiente. string
value Valor de variável de ambiente não secreto. string

ContainerAppProbe

Nome Descrição Valor
failureThreshold Falhas mínimas consecutivas para que a investigação seja considerada com falha depois de ter sido bem-sucedida. O valor padrão é 3. O valor mínimo é 1. O valor máximo é 10. INT
httpGet HTTPGet especifica a solicitação http a ser executada. ContainerAppProbeHttpGet
initialDelaySeconds Número de segundos depois que o contêiner é iniciado antes que as investigações de atividade sejam iniciadas. O valor mínimo é 1. O valor máximo é 60. INT
periodSeconds A frequência (em segundos) para realizar a investigação. O padrão é 10 segundos. O valor mínimo é 1. O valor máximo é 240. INT
successThreshold Mínimo de sucessos consecutivos para que a investigação seja considerada bem-sucedida depois de ter falhado. O valor padrão é 1. Deve ser 1 para vida e inicialização. O valor mínimo é 1. O valor máximo é 10. INT
tcpSocket TCPSocket especifica uma ação envolvendo uma porta TCP. Ainda não há suporte para ganchos TCP. ContainerAppProbeTcpSocket
terminationGracePeriodSeconds Duração opcional em segundos, o pod precisa terminar normalmente após a falha da investigação. O período de carência é a duração em segundos após os processos em execução no pod serem enviados um sinal de encerramento e a hora em que os processos são interrompidos à força com um sinal de encerramento. Defina esse valor por mais tempo do que o tempo de limpeza esperado para seu processo. Se esse valor for nulo, os terminationGracePeriodSeconds do pod serão usados. Caso contrário, esse valor substituirá o valor fornecido pela especificação de pod. O valor deve ser um inteiro não negativo. O valor zero indica parar imediatamente por meio do sinal de encerramento (sem oportunidade de desligar). Esse é um campo alfa e requer a habilitação do portão de recursos ProbeTerminationGracePeriod. O valor máximo é de 3600 segundos (1 hora) INT
timeoutSeconds Número de segundos após o qual a investigação atinge o tempo limite. O padrão é 1 segundo. O valor mínimo é 1. O valor máximo é 240. INT
tipo O tipo de investigação. 'Liveness'
'Preparação'
'Startup'

ContainerAppProbeHttpGet

Nome Descrição Valor
host O nome do host ao qual se conectar, o padrão é o IP do pod. Você provavelmente deseja definir "Host" em httpHeaders. string
httpHeaders Cabeçalhos personalizados a serem definidos na solicitação. HTTP permite cabeçalhos repetidos. ContainerAppProbeHttpGetHttpHeadersItem[]
caminho Caminho para acessar no servidor HTTP. string
porta Nome ou número da porta a ser acessada no contêiner. O número deve estar no intervalo de 1 a 65535. O nome deve ser um IANA_SVC_NAME. int (obrigatório)
scheme Esquema a ser usado para se conectar ao host. O padrão é HTTP. 'HTTP'
'HTTPS'

ContainerAppProbeHttpGetHttpHeadersItem

Nome Descrição Valor
name O nome do campo de cabeçalho cadeia de caracteres (obrigatório)
value O valor do campo de cabeçalho cadeia de caracteres (obrigatório)

ContainerAppProbeTcpSocket

Nome Descrição Valor
host Opcional: nome do host ao qual se conectar, o padrão é o IP do pod. string
porta Número ou nome da porta a ser acessada no contêiner. O número deve estar no intervalo de 1 a 65535. O nome deve ser um IANA_SVC_NAME. int (obrigatório)

ContainerResources

Nome Descrição Valor
cpu CPU necessária em núcleos, por exemplo, 0,5 Para especificar um valor decimal, use a função json( ). int ou json decimal
memória Memória necessária, por exemplo, "250 Mb" string

VolumeMount

Nome Descrição Valor
mountPath Caminho dentro do contêiner no qual o volume deve ser montado. Não deve conter ':'. string
Subcaminho Caminho dentro do volume do qual o volume do contêiner deve ser montado. O padrão é "" (raiz do volume). string
volumeName Isso deve corresponder ao Nome de um Volume. string

InitContainer

Nome Descrição Valor
args Argumentos de comando de início do contêiner. string[]
. Comando de início do contêiner. string[]
env Variáveis de ambiente de contêiner. EnvironmentVar[]
image Marca de imagem de contêiner. string
name Nome do contêiner personalizado. string
recursos Requisitos de recursos do contêiner. ContainerResources
volumeMounts Montagens de volume de contêiner. VolumeMount[]

Escala

Nome Descrição Valor
maxReplicas Opcional. Número máximo de réplicas de contêiner. O padrão será 10 se não for definido. INT
minReplicas Opcional. Número mínimo de réplicas de contêiner. INT
regras Regras de dimensionamento. ScaleRule[]

ScaleRule

Nome Descrição Valor
azureQueue Dimensionamento baseado em fila do Azure. QueueScaleRule
custom Regra de escala personalizada. CustomScaleRule
http Dimensionamento baseado em solicitações HTTP. HttpScaleRule
name Nome da regra de escala string
TCP Escala baseada em solicitações Tcp. TcpScaleRule

QueueScaleRule

Nome Descrição Valor
auth Segredos de autenticação para a regra de escala de fila. ScaleRuleAuth[]
queueLength Comprimento da fila. INT
queueName Nome da fila. string

ScaleRuleAuth

Nome Descrição Valor
secretRef Nome do segredo do qual efetuar pull dos parâmetros de autenticação. string
triggerParameter Parâmetro trigger que usa o segredo string

CustomScaleRule

Nome Descrição Valor
auth Segredos de autenticação para a regra de escala personalizada. ScaleRuleAuth[]
metadata Propriedades de metadados para descrever a regra de escala personalizada. CustomScaleRuleMetadata
tipo Tipo da regra de escala personalizada
por exemplo: azure-servicebus, redis etc.
string

CustomScaleRuleMetadata

Nome Descrição Valor
{propriedade personalizada} string

HttpScaleRule

Nome Descrição Valor
auth Segredos de autenticação para a regra de escala personalizada. ScaleRuleAuth[]
metadata Propriedades de metadados para descrever a regra de escala http. HttpScaleRuleMetadata

HttpScaleRuleMetadata

Nome Descrição Valor
{propriedade personalizada} string

TcpScaleRule

Nome Descrição Valor
auth Segredos de autenticação para a regra de escala tcp. ScaleRuleAuth[]
metadata Propriedades de metadados para descrever a regra de escala tcp. TcpScaleRuleMetadata

TcpScaleRuleMetadata

Nome Descrição Valor
{propriedade personalizada} string

ServiceBind

Nome Descrição Valor
clientType Tipo do cliente a ser usado para se conectar ao serviço string
customizedKeys Chaves personalizadas para personalizar valores injetados no aplicativo ServiceBindCustomizedKeys
name Nome da associação de serviço string
serviceId ID do recurso do serviço de destino string

ServiceBindCustomizedKeys

Nome Descrição Valor
{propriedade personalizada} string

Volume

Nome Descrição Valor
mountOptions Opções de montagem usadas ao montar o compartilhamento de arquivos do Azure ou o compartilhamento de arquivos do Azure NFS. Deve ser uma cadeia de caracteres separada por vírgulas. string
name Nome do volume. string
segredos Lista de segredos a serem adicionados no volume. Se nenhum segredo for fornecido, todos os segredos na coleção serão adicionados ao volume. SecretVolumeItem[]
storageName Nome do recurso de armazenamento. Não é necessário fornecer para EmptyDir e Secret. string
storageType Tipo de armazenamento para o volume. Se não for fornecido, use EmptyDir. 'AzureFile'
'EmptyDir'
'NfsAzureFile'
'Secret'

SecretVolumeItem

Nome Descrição Valor
caminho Caminho para o qual o segredo do projeto será projetado. Se nenhum caminho for fornecido, o caminho usará como padrão o nome do segredo listado em secretRef. string
secretRef Nome do segredo do Aplicativo de Contêiner do qual efetuar pull do valor do segredo. string

Modelos de início rápido

Os modelos de início rápido a seguir implantam esse tipo de recurso.

Modelo Descrição
Cria um aplicativo de contêiner e um ambiente com o Registro

Implantar no Azure
Crie um Ambiente de Aplicativo de Contêiner com um Aplicativo de Contêiner básico de um Registro de Contêiner do Azure. Ele também implanta um workspace do Log Analytics para armazenar logs.
Cria um aplicativo de contêiner com um ambiente de aplicativo de contêiner

Implantar no Azure
Crie um Ambiente de Aplicativo de Contêiner com um Aplicativo de Contêiner básico. Ele também implanta um workspace do Log Analytics para armazenar logs.
Cria um aplicativo de contêiner em um ambiente de aplicativo de contêiner

Implantar no Azure
Crie um Ambiente de Aplicativo de Contêiner com um Aplicativo de Contêiner básico. Ele também implanta um workspace do Log Analytics para armazenar logs.
Cria um aplicativo de contêiner com uma regra de dimensionamento HTTP definida

Implantar no Azure
Crie um Ambiente de Aplicativo de Contêiner com um Aplicativo de Contêiner básico que seja dimensionado com base no tráfego HTTP.
Cria um ambiente de Aplicativo de Contêiner externo com uma VNET

Implantar no Azure
Cria um ambiente de Aplicativo de Contêiner externo com uma VNET.
Cria um ambiente interno do Aplicativo de Contêiner com uma VNET

Implantar no Azure
Cria um ambiente interno do Aplicativo de Contêiner com uma VNET.

Definição de recurso de modelo do ARM

O tipo de recurso containerApps pode ser implantado com operações direcionadas:

Para obter uma lista das propriedades alteradas em cada versão da API, consulte log de alterações.

Formato de recurso

Para criar um recurso de Microsoft.App/containerApps, adicione o JSON a seguir ao modelo.

{
  "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 propriedade

containerApps

Nome Descrição Valor
tipo O tipo de recurso 'Microsoft.App/containerApps'
apiVersion A versão da API do recurso '2023-11-02-preview'
name O nome do recurso cadeia de caracteres (obrigatório)

Limite de caracteres: 2 a 32

Caracteres válidos:
Letras minúsculas, números e hifens.

Comece com uma letra e termine com um caractere alfanumérico.
local A localização geográfica em que o recurso reside cadeia de caracteres (obrigatório)
marcas Marcas de recurso. Dicionário de nomes e valores de marcas. Consulte Marcas em modelos
extendedLocation O tipo complexo do local estendido. ExtendedLocation
identidade identidades gerenciadas para o Aplicativo de Contêiner interagir com outros serviços do Azure sem manter segredos ou credenciais no código. ManagedServiceIdentity
managedBy A ID de recurso totalmente qualificada do recurso que gerencia esse recurso. Indica se esse recurso é gerenciado por outro recurso do Azure. Se isso estiver presente, a implantação do modo completo não excluirá o recurso se ele for removido do modelo, pois ele é gerenciado por outro recurso. string
properties Propriedades específicas do recurso ContainerApp ContainerAppProperties

ExtendedLocation

Nome Descrição Valor
name O nome do local estendido. string
type O tipo do local estendido. 'CustomLocation'

ManagedServiceIdentity

Nome Descrição Valor
tipo Tipo de identidade de serviço gerenciada (em que os tipos SystemAssigned e UserAssigned são permitidos). 'None'
'SystemAssigned'
'SystemAssigned,UserAssigned'
'UserAssigned' (obrigatório)
userAssignedIdentities O conjunto de identidades atribuídas pelo usuário associadas ao recurso. As chaves do dicionário userAssignedIdentities serão IDs de recurso do ARM no formulário: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Os valores de dicionário podem ser objetos vazios ({}) em solicitações. UserAssignedIdentities

UserAssignedIdentities

Nome Descrição Valor
{propriedade personalizada} UserAssignedIdentity

UserAssignedIdentity

Esse objeto não contém nenhuma propriedade a ser definida durante a implantação. Todas as propriedades são ReadOnly.

ContainerAppProperties

Nome Descrição Valor
configuração Propriedades de configuração do Aplicativo de Contêiner não com versão. Configuration
environmentId ID do recurso do ambiente. string
managedEnvironmentId Preterido. ID do recurso do ambiente do Aplicativo de Contêiner. string
template Definição de aplicativo com versão do Aplicativo de Contêiner. Modelo
workloadProfileName Nome do perfil de carga de trabalho a ser fixado para execução do aplicativo de contêiner. string

Configuração

Nome Descrição Valor
activeRevisionsMode ActiveRevisionsMode controla como as revisões ativas são tratadas para o aplicativo contêiner:
{list} {item} Múltiplo: várias revisões podem estar ativas. {/item} {item} Simples: apenas uma revisão pode estar ativa por vez. Os pesos de revisão não podem ser usados nesse modo. Se nenhum valor for fornecido, esse será o padrão. {/item} {/list}
'Múltiplo'
'Single'
dapr Configuração do Dapr para o Aplicativo de Contêiner. Dapr
Entrada Configurações de entrada. Entrada
maxInactiveRevisions Opcional. Máximo de revisões inativas que um Aplicativo de Contêiner pode ter. INT
registries Coleção de credenciais de registro de contêiner privado para contêineres usados pelo aplicativo contêiner RegistryCredentials[]
segredos Coleção de segredos usados por um aplicativo de contêiner Secret[]
serviço Aplicativo de contêiner para ser um contêiner de desenvolvimento Serviço de Aplicativo Serviço

Dapr

Nome Descrição Valor
appId Identificador de aplicativo dapr string
appPort Informa ao Dapr em qual porta seu aplicativo está escutando INT
appProtocol Informa ao Dapr qual protocolo seu aplicativo está usando. As opções válidas são http e grpc. O padrão é http 'grpc'
'http'
enableApiLogging Habilita o registro em log de API para o sidecar do Dapr bool
Habilitado Booliano indicando se o carro lateral do Dapr está habilitado bool
httpMaxRequestSize Aumento do tamanho máximo do parâmetro de servidores http e grpc do corpo da solicitação em MB para lidar com o carregamento de arquivos grandes. O padrão é 4 MB. INT
httpReadBufferSize Tamanho máximo do dapr do buffer de leitura de cabeçalho http em KB a ser manipulado ao enviar cabeçalhos de vários KB. O padrão é 65 KB. INT
logLevel Define o nível de log para o sidecar do Dapr. Os valores permitidos são depuração, informações, aviso, erro. O padrão são as informações. 'debug'
'error'
'info'
'avisar'

Entrada

Nome Descrição Valor
additionalPortMappings Configurações para expor portas adicionais no aplicativo de contêiner IngressPortMapping[]
allowInsecure Bool indicando se as conexões HTTP com são permitidas. Se definido como conexões HTTP falsas, serão redirecionados automaticamente para conexões HTTPS bool
clientCertificateMode Modo de certificado do cliente para autenticação mTLS. Ignorar indica que o servidor descarta o certificado do cliente no encaminhamento. Accept indica que o servidor encaminha o certificado do cliente, mas não requer um certificado do cliente. Exigir indica que o servidor requer um certificado do cliente. 'accept'
'ignore'
'require'
corsPolicy Política cors para aplicativo de contêiner CorsPolicy
customDomains associações de domínio personalizadas para nomes de host dos Aplicativos de Contêiner. CustomDomain[]
exposedPort Porta exposta em contêineres para tráfego TCP de entrada INT
external Bool indicando se o aplicativo expõe um ponto de extremidade http externo bool
ipSecurityRestrictions Regras para restringir o endereço IP de entrada. IpSecurityRestrictionRule[]
stickySessions Sessões autoadesivas para o modo de revisão única IngressStickySessions
targetPort Porta de destino em contêineres para tráfego de entrada INT
targetPortHttpScheme Se um aplicativo http escuta em http ou https 'http'
'https'
traffic Pesos de tráfego para revisões do aplicativo TrafficWeight[]
transporte Protocolo de transporte de entrada 'auto'
'http'
'http2'
'tcp'

IngressPortMapping

Nome Descrição Valor
exposedPort Especifica a porta exposta para a porta de destino. Se não for especificado, o padrão será a porta de destino INT
external Especifica se a porta do aplicativo está acessível fora do ambiente bool (obrigatório)
targetPort Especifica a porta em que o contêiner do usuário escuta int (obrigatório)

CorsPolicy

Nome Descrição Valor
allowCredentials Especifica se o recurso permite credenciais bool
allowedHeaders Especifica o conteúdo do cabeçalho access-control-allow-headers string[]
allowedMethods Especifica o conteúdo do cabeçalho access-control-allow-methods string[]
allowedOrigins Especifica o conteúdo do cabeçalho access-control-allow-origins string[] (obrigatório)
exposeHeaders Especifica o conteúdo do cabeçalho access-control-expose-headers string[]
maxAge Especifica o conteúdo do cabeçalho access-control-max-age INT

CustomDomain

Nome Descrição Valor
Bindingtype Custom Domain tipo de associação. 'Desabilitado'
'SniEnabled'
certificateId ID do recurso do Certificado a ser associado a esse nome de host. Deve existir no Ambiente Gerenciado. string
name Hostname. cadeia de caracteres (obrigatório)

IpSecurityRestrictionRule

Nome Descrição Valor
ação Permitir ou negar regras para determinar o IP de entrada. Observação: as regras só podem consistir em ALL Allow ou ALL Deny 'Allow'
'Deny' (obrigatório)
descrição Descreva a regra de restrição de IP que está sendo enviada para o contêiner-aplicativo. Esse é um campo opcional. string
ipAddressRange Notação CIDR para corresponder ao endereço IP de entrada cadeia de caracteres (obrigatório)
name Nome da regra de restrição de IP. cadeia de caracteres (obrigatório)

IngressStickySessions

Nome Descrição Valor
affinity Afinidade de sessão autoadesiva 'none'
'sticky'

TrafficWeight

Nome Descrição Valor
label Associa um rótulo de tráfego a uma revisão string
latestRevision Indica que o peso do tráfego pertence a uma revisão estável mais recente bool
revisionName Nome de uma revisão string
peso Peso do tráfego atribuído a uma revisão INT

RegistryCredentials

Nome Descrição Valor
identidade Uma Identidade Gerenciada a ser usada para autenticar com Registro de Contêiner do Azure. Para identidades atribuídas pelo usuário, use a ID completa do recurso de identidade atribuída pelo usuário. Para identidades atribuídas pelo sistema, use 'system' string
passwordSecretRef O nome do Segredo que contém a senha de logon do Registro string
Servidor Servidor do Registro de Contêiner string
Nome de Usuário Nome de usuário do Registro de Contêiner string

Segredo

Nome Descrição Valor
identidade ID de recurso de uma identidade gerenciada para autenticar com o Azure Key Vault ou Sistema para usar uma identidade atribuída pelo sistema. string
keyVaultUrl A URL Key Vault do Azure apontando para o segredo referenciado pelo aplicativo de contêiner. string
name Nome do Segredo. string
value Valor do Segredo. string

Restrições:
Valor confidencial. Passe como um parâmetro seguro.

Serviço

Nome Descrição Valor
tipo Tipo de serviço Dev ContainerApp cadeia de caracteres (obrigatório)

Modelo

Nome Descrição Valor
containers Lista de definições de contêiner para o Aplicativo de Contêiner. Contêiner[]
initContainers Lista de contêineres especializados executados antes dos contêineres de aplicativo. InitContainer[]
revisionSuffix Sufixo amigável que é acrescentado ao nome de revisão string
scale Dimensionamento de propriedades para o Aplicativo de Contêiner. Escala
serviceBinds Lista de serviços de aplicativos de contêiner associados ao aplicativo ServiceBind[]
terminationGracePeriodSeconds Duração opcional em segundos que a Instância do Aplicativo de Contêiner precisa terminar normalmente. O valor deve ser um inteiro não negativo. O valor zero indica parar imediatamente por meio do sinal de encerramento (sem oportunidade de desligar). Se esse valor for zero, o período de carência padrão será usado. Defina esse valor por mais tempo do que o tempo de limpeza esperado para seu processo. O padrão é 30 segundos. INT
volumes Lista de definições de volume para o Aplicativo de Contêiner. Volume[]

Contêiner

Nome Descrição Valor
args Argumentos de comando de início do contêiner. string[]
. Comando de início do contêiner. string[]
env Variáveis de ambiente de contêiner. EnvironmentVar[]
image Marca de imagem de contêiner. string
name Nome do contêiner personalizado. string
investigações Lista de investigações para o contêiner. ContainerAppProbe[]
recursos Requisitos de recursos do contêiner. ContainerResources
volumeMounts Montagens de volume de contêiner. VolumeMount[]

EnvironmentVar

Nome Descrição Valor
name Nome da variável de ambiente. string
secretRef Nome do segredo do Aplicativo de Contêiner do qual extrair o valor da variável de ambiente. string
value Valor de variável de ambiente não secreto. string

ContainerAppProbe

Nome Descrição Valor
failureThreshold Falhas mínimas consecutivas para que a investigação seja considerada com falha depois de ter sido bem-sucedida. O valor padrão é 3. O valor mínimo é 1. O valor máximo é 10. INT
httpGet HTTPGet especifica a solicitação http a ser executada. ContainerAppProbeHttpGet
initialDelaySeconds Número de segundos depois que o contêiner é iniciado antes que as investigações de atividade sejam iniciadas. O valor mínimo é 1. O valor máximo é 60. INT
periodSeconds A frequência (em segundos) para realizar a investigação. O padrão é 10 segundos. O valor mínimo é 1. O valor máximo é 240. INT
successThreshold Mínimo de sucessos consecutivos para que a investigação seja considerada bem-sucedida depois de ter falhado. O valor padrão é 1. Deve ser 1 para vida e inicialização. O valor mínimo é 1. O valor máximo é 10. INT
tcpSocket TCPSocket especifica uma ação envolvendo uma porta TCP. Ainda não há suporte para ganchos TCP. ContainerAppProbeTcpSocket
terminationGracePeriodSeconds Duração opcional em segundos, o pod precisa terminar normalmente após a falha da investigação. O período de carência é a duração em segundos após os processos em execução no pod serem enviados um sinal de encerramento e a hora em que os processos são interrompidos à força com um sinal de encerramento. Defina esse valor por mais tempo do que o tempo de limpeza esperado para seu processo. Se esse valor for nulo, os terminationGracePeriodSeconds do pod serão usados. Caso contrário, esse valor substituirá o valor fornecido pela especificação de pod. O valor deve ser um inteiro não negativo. O valor zero indica parar imediatamente por meio do sinal de encerramento (sem oportunidade de desligar). Esse é um campo alfa e requer a habilitação do portão de recursos ProbeTerminationGracePeriod. O valor máximo é de 3600 segundos (1 hora) INT
timeoutSeconds Número de segundos após o qual a investigação atinge o tempo limite. O padrão é 1 segundo. O valor mínimo é 1. O valor máximo é 240. INT
tipo O tipo de investigação. 'Liveness'
'Preparação'
'Startup'

ContainerAppProbeHttpGet

Nome Descrição Valor
host O nome do host ao qual se conectar, o padrão é o IP do pod. Você provavelmente deseja definir "Host" em httpHeaders. string
httpHeaders Cabeçalhos personalizados a serem definidos na solicitação. HTTP permite cabeçalhos repetidos. ContainerAppProbeHttpGetHttpHeadersItem[]
caminho Caminho para acessar no servidor HTTP. string
porta Nome ou número da porta a ser acessada no contêiner. O número deve estar no intervalo de 1 a 65535. O nome deve ser um IANA_SVC_NAME. int (obrigatório)
scheme Esquema a ser usado para se conectar ao host. O padrão é HTTP. 'HTTP'
'HTTPS'

ContainerAppProbeHttpGetHttpHeadersItem

Nome Descrição Valor
name O nome do campo de cabeçalho cadeia de caracteres (obrigatório)
value O valor do campo de cabeçalho cadeia de caracteres (obrigatório)

ContainerAppProbeTcpSocket

Nome Descrição Valor
host Opcional: o nome do host ao qual se conectar, o padrão é o IP do pod. string
porta Número ou nome da porta a ser acessada no contêiner. O número deve estar no intervalo de 1 a 65535. O nome deve ser um IANA_SVC_NAME. int (obrigatório)

ContainerResources

Nome Descrição Valor
cpu CPU necessária em núcleos, por exemplo, 0,5 Para especificar um valor decimal, use a função json(). int ou json decimal
memória Memória necessária, por exemplo, "250 Mb" string

VolumeMount

Nome Descrição Valor
mountPath Caminho dentro do contêiner no qual o volume deve ser montado. Não deve conter ':'. string
Subcaminho Caminho dentro do volume do qual o volume do contêiner deve ser montado. O padrão é "" (raiz do volume). string
volumeName Isso deve corresponder ao Nome de um Volume. string

InitContainer

Nome Descrição Valor
args Argumentos de comando de início de contêiner. string[]
. Comando de início do contêiner. string[]
env Variáveis de ambiente de contêiner. EnvironmentVar[]
image Marca de imagem de contêiner. string
name Nome do contêiner personalizado. string
recursos Requisitos de recursos do contêiner. ContainerResources
volumeMounts Montagens de volume de contêiner. VolumeMount[]

Escala

Nome Descrição Valor
maxReplicas Opcional. Número máximo de réplicas de contêiner. O padrão será 10 se não estiver definido. INT
minReplicas Opcional. Número mínimo de réplicas de contêiner. INT
regras Regras de dimensionamento. ScaleRule[]

ScaleRule

Nome Descrição Valor
azureQueue Dimensionamento baseado em fila do Azure. QueueScaleRule
custom Regra de escala personalizada. CustomScaleRule
http Dimensionamento baseado em solicitações HTTP. HttpScaleRule
name Nome da regra de escala string
TCP Escala baseada em solicitações Tcp. TcpScaleRule

QueueScaleRule

Nome Descrição Valor
auth Segredos de autenticação para a regra de escala de fila. ScaleRuleAuth[]
queueLength Comprimento da fila. INT
queueName Nome da fila. string

ScaleRuleAuth

Nome Descrição Valor
secretRef Nome do segredo do qual efetuar pull dos parâmetros de autenticação. string
triggerParameter Parâmetro trigger que usa o segredo string

CustomScaleRule

Nome Descrição Valor
auth Segredos de autenticação para a regra de escala personalizada. ScaleRuleAuth[]
metadata Propriedades de metadados para descrever a regra de escala personalizada. CustomScaleRuleMetadata
tipo Tipo da regra de escala personalizada
por exemplo: azure-servicebus, redis etc.
string

CustomScaleRuleMetadata

Nome Descrição Valor
{propriedade personalizada} string

HttpScaleRule

Nome Descrição Valor
auth Segredos de autenticação para a regra de escala personalizada. ScaleRuleAuth[]
metadata Propriedades de metadados para descrever a regra de escala http. HttpScaleRuleMetadata

HttpScaleRuleMetadata

Nome Descrição Valor
{propriedade personalizada} string

TcpScaleRule

Nome Descrição Valor
auth Segredos de autenticação para a regra de escala tcp. ScaleRuleAuth[]
metadata Propriedades de metadados para descrever a regra de escala tcp. TcpScaleRuleMetadata

TcpScaleRuleMetadata

Nome Descrição Valor
{propriedade personalizada} string

ServiceBind

Nome Descrição Valor
clientType Tipo do cliente a ser usado para se conectar ao serviço string
customizedKeys Chaves personalizadas para personalizar valores injetados no aplicativo ServiceBindCustomizedKeys
name Nome da associação de serviço string
serviceId ID do recurso do serviço de destino string

ServiceBindCustomizedKeys

Nome Descrição Valor
{propriedade personalizada} string

Volume

Nome Descrição Valor
mountOptions Opções de montagem usadas durante a montagem do compartilhamento de arquivos do Azure ou do compartilhamento de arquivos do Azure NFS. Deve ser uma cadeia de caracteres separada por vírgulas. string
name Nome do volume. string
segredos Lista de segredos a serem adicionados no volume. Se nenhum segredo for fornecido, todos os segredos na coleção serão adicionados ao volume. SecretVolumeItem[]
storageName Nome do recurso de armazenamento. Não é necessário fornecer para EmptyDir e Secret. string
storageType Tipo de armazenamento para o volume. Se não for fornecido, use EmptyDir. 'AzureFile'
'EmptyDir'
'NfsAzureFile'
'Secret'

SecretVolumeItem

Nome Descrição Valor
caminho Caminho para o qual o segredo do projeto será. Se nenhum caminho for fornecido, o caminho usará como padrão o nome do segredo listado em secretRef. string
secretRef Nome do segredo do Aplicativo de Contêiner do qual extrair o valor do segredo. string

Modelos de início rápido

Os modelos de início rápido a seguir implantam esse tipo de recurso.

Modelo Descrição
Cria um aplicativo de contêiner e um ambiente com o Registro

Implantar no Azure
Crie um Ambiente de Aplicativo de Contêiner com um Aplicativo de Contêiner básico de um Registro de Contêiner do Azure. Ele também implanta um Workspace do Log Analytics para armazenar logs.
Cria um aplicativo de contêiner com um ambiente de aplicativo de contêiner

Implantar no Azure
Crie um ambiente de aplicativo de contêiner com um aplicativo de contêiner básico. Ele também implanta um Workspace do Log Analytics para armazenar logs.
Cria um aplicativo de contêiner em um ambiente de aplicativo de contêiner

Implantar no Azure
Crie um Ambiente de Aplicativo de Contêiner com um Aplicativo de Contêiner básico. Ele também implanta um Workspace do Log Analytics para armazenar logs.
Cria um aplicativo de contêiner com uma regra de dimensionamento HTTP definida

Implantar no Azure
Crie um Ambiente de Aplicativo de Contêiner com um Aplicativo de Contêiner básico que seja dimensionado com base no tráfego HTTP.
Cria um ambiente de Aplicativo de Contêiner externo com uma VNET

Implantar no Azure
Cria um ambiente de Aplicativo de Contêiner externo com uma VNET.
Cria um ambiente interno do Aplicativo de Contêiner com uma VNET

Implantar no Azure
Cria um ambiente interno do Aplicativo de Contêiner com uma VNET.

Definição de recurso do Terraform (provedor AzAPI)

O tipo de recurso containerApps pode ser implantado com operações direcionadas:

  • Grupos de recursos

Para obter uma lista de propriedades alteradas em cada versão da API, consulte log de alterações.

Formato de recurso

Para criar um recurso Microsoft.App/containerApps, adicione o Terraform a seguir ao modelo.

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 propriedade

containerApps

Nome Descrição Valor
tipo O tipo de recurso "Microsoft.App/containerApps@2023-11-02-preview"
name O nome do recurso cadeia de caracteres (obrigatório)

Limite de caracteres: 2 a 32

Caracteres válidos:
Letras minúsculas, números e hifens.

Comece com uma letra e termine com um caractere alfanumérico.
local A localização geográfica em que o recurso reside cadeia de caracteres (obrigatório)
parent_id Para implantar em um grupo de recursos, use a ID desse grupo de recursos. cadeia de caracteres (obrigatório)
marcas Marcas de recurso. Dicionário de nomes e valores de marcas.
extendedLocation O tipo complexo do local estendido. ExtendedLocation
identidade identidades gerenciadas para o Aplicativo de Contêiner interagir com outros serviços do Azure sem manter segredos ou credenciais no código. ManagedServiceIdentity
managedBy A ID de recurso totalmente qualificada do recurso que gerencia esse recurso. Indica se esse recurso é gerenciado por outro recurso do Azure. Se isso estiver presente, a implantação do modo completo não excluirá o recurso se ele for removido do modelo, pois ele é gerenciado por outro recurso. string
properties Propriedades específicas do recurso ContainerApp ContainerAppProperties

ExtendedLocation

Nome Descrição Valor
name O nome do local estendido. string
type O tipo do local estendido. "CustomLocation"

ManagedServiceIdentity

Nome Descrição Valor
tipo Tipo de identidade de serviço gerenciada (em que os tipos SystemAssigned e UserAssigned são permitidos). "SystemAssigned"
"SystemAssigned,UserAssigned"
"UserAssigned" (obrigatório)
identity_ids O conjunto de identidades atribuídas pelo usuário associadas ao recurso. As chaves do dicionário userAssignedIdentities serão IDs de recurso do ARM no formato: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Os valores do dicionário podem ser objetos vazios ({}) em solicitações. Matriz de IDs de identidade do usuário.

UserAssignedIdentities

Nome Descrição Valor
{propriedade personalizada} UserAssignedIdentity

UserAssignedIdentity

Esse objeto não contém nenhuma propriedade a ser definida durante a implantação. Todas as propriedades são ReadOnly.

ContainerAppProperties

Nome Descrição Valor
configuração Propriedades de configuração do Aplicativo de Contêiner não com controle de versão. Configuration
environmentId ID do recurso do ambiente. string
managedEnvironmentId Preterido. ID do recurso do ambiente do Aplicativo de Contêiner. string
template Definição de aplicativo com controle de versão do Aplicativo de Contêiner. Modelo
workloadProfileName Nome do perfil de carga de trabalho a ser fixado para execução do aplicativo de contêiner. string

Configuração

Nome Descrição Valor
activeRevisionsMode ActiveRevisionsMode controla como as revisões ativas são tratadas para o aplicativo contêiner:
{list} {item} Múltiplo: várias revisões podem estar ativas. {/item} {item} Único: apenas uma revisão pode estar ativa por vez. Os pesos de revisão não podem ser usados nesse modo. Se nenhum valor for fornecido, esse será o padrão. {/item} {/list}
"Múltiplo"
"Único"
dapr Configuração do Dapr para o Aplicativo de Contêiner. Dapr
Entrada Configurações de entrada. Entrada
maxInactiveRevisions Opcional. Máximo de revisões inativas que um Aplicativo de Contêiner pode ter. INT
registries Coleção de credenciais de registro de contêiner privado para contêineres usados pelo aplicativo contêiner RegistryCredentials[]
segredos Coleção de segredos usados por um aplicativo de contêiner Secret[]
serviço Aplicativo de contêiner para ser um contêiner de desenvolvimento Serviço de Aplicativo Serviço

Dapr

Nome Descrição Valor
appId Identificador de aplicativo dapr string
appPort Informa ao Dapr em qual porta seu aplicativo está escutando INT
appProtocol Informa ao Dapr qual protocolo seu aplicativo está usando. As opções válidas são http e grpc. O padrão é http "grpc"
"http"
enableApiLogging Habilita o registro em log de API para o sidecar do Dapr bool
Habilitado Booliano indicando se o carro lateral do Dapr está habilitado bool
httpMaxRequestSize Aumento do tamanho máximo do parâmetro de servidores http e grpc do corpo da solicitação em MB para lidar com o carregamento de arquivos grandes. O padrão é 4 MB. INT
httpReadBufferSize Tamanho máximo do dapr do buffer de leitura de cabeçalho http em KB a ser manipulado ao enviar cabeçalhos de vários KB. O padrão é 65 KB. INT
logLevel Define o nível de log para o sidecar do Dapr. Os valores permitidos são depuração, informações, aviso, erro. O padrão são as informações. "depurar"
"error"
"info"
"avisar"

Entrada

Nome Descrição Valor
additionalPortMappings Configurações para expor portas adicionais no aplicativo de contêiner IngressPortMapping[]
allowInsecure Bool indicando se as conexões HTTP com são permitidas. Se definido como conexões HTTP falsas, serão redirecionados automaticamente para conexões HTTPS bool
clientCertificateMode Modo de certificado do cliente para autenticação mTLS. Ignorar indica que o servidor descarta o certificado do cliente no encaminhamento. Accept indica que o servidor encaminha o certificado do cliente, mas não requer um certificado do cliente. Exigir indica que o servidor requer um certificado do cliente. "aceitar"
"ignorar"
"exigir"
corsPolicy Política cors para aplicativo de contêiner CorsPolicy
customDomains associações de domínio personalizadas para nomes de host dos Aplicativos de Contêiner. CustomDomain[]
exposedPort Porta exposta em contêineres para tráfego TCP de entrada INT
external Bool indicando se o aplicativo expõe um ponto de extremidade http externo bool
ipSecurityRestrictions Regras para restringir o endereço IP de entrada. IpSecurityRestrictionRule[]
stickySessions Sessões autoadesivas para o modo de revisão única IngressStickySessions
targetPort Porta de destino em contêineres para tráfego de entrada INT
targetPortHttpScheme Se um aplicativo http escuta em http ou https "http"
"https"
traffic Pesos de tráfego para revisões do aplicativo TrafficWeight[]
transporte Protocolo de transporte de entrada "auto"
"http"
"http2"
"tcp"

IngressPortMapping

Nome Descrição Valor
exposedPort Especifica a porta exposta para a porta de destino. Se não for especificado, o padrão será a porta de destino INT
external Especifica se a porta do aplicativo está acessível fora do ambiente bool (obrigatório)
targetPort Especifica a porta em que o contêiner do usuário escuta int (obrigatório)

CorsPolicy

Nome Descrição Valor
allowCredentials Especifica se o recurso permite credenciais bool
allowedHeaders Especifica o conteúdo do cabeçalho access-control-allow-headers string[]
allowedMethods Especifica o conteúdo do cabeçalho access-control-allow-methods string[]
allowedOrigins Especifica o conteúdo do cabeçalho access-control-allow-origins string[] (obrigatório)
exposeHeaders Especifica o conteúdo do cabeçalho access-control-expose-headers string[]
maxAge Especifica o conteúdo do cabeçalho access-control-max-age INT

CustomDomain

Nome Descrição Valor
Bindingtype Custom Domain tipo de associação. "Desabilitado"
"SniEnabled"
certificateId ID do recurso do Certificado a ser associado a esse nome de host. Deve existir no Ambiente Gerenciado. string
name Hostname. cadeia de caracteres (obrigatório)

IpSecurityRestrictionRule

Nome Descrição Valor
ação Permitir ou negar regras para determinar o IP de entrada. Observação: as regras só podem consistir em ALL Allow ou ALL Deny "Permitir"
"Negar" (obrigatório)
descrição Descreva a regra de restrição de IP que está sendo enviada para o contêiner-aplicativo. Esse é um campo opcional. string
ipAddressRange Notação CIDR para corresponder ao endereço IP de entrada cadeia de caracteres (obrigatório)
name Nome da regra de restrição de IP. cadeia de caracteres (obrigatório)

IngressStickySessions

Nome Descrição Valor
affinity Afinidade de sessão autoadesiva "none"
"autoadesiva"

TrafficWeight

Nome Descrição Valor
label Associa um rótulo de tráfego a uma revisão string
latestRevision Indica que o peso do tráfego pertence a uma revisão estável mais recente bool
revisionName Nome de uma revisão string
peso Peso do tráfego atribuído a uma revisão INT

RegistryCredentials

Nome Descrição Valor
identidade Uma Identidade Gerenciada a ser usada para autenticar com Registro de Contêiner do Azure. Para identidades atribuídas pelo usuário, use a ID completa do recurso de identidade atribuída pelo usuário. Para identidades atribuídas pelo sistema, use 'system' string
passwordSecretRef O nome do Segredo que contém a senha de logon do Registro string
Servidor Servidor do Registro de Contêiner string
Nome de Usuário Nome de usuário do Registro de Contêiner string

Segredo

Nome Descrição Valor
identidade ID de recurso de uma identidade gerenciada para autenticar com o Azure Key Vault ou Sistema para usar uma identidade atribuída pelo sistema. string
keyVaultUrl A URL Key Vault do Azure apontando para o segredo referenciado pelo aplicativo de contêiner. string
name Nome do Segredo. string
value Valor do Segredo. string

Restrições:
Valor confidencial. Passe como um parâmetro seguro.

Serviço

Nome Descrição Valor
tipo Tipo de serviço Dev ContainerApp cadeia de caracteres (obrigatório)

Modelo

Nome Descrição Valor
containers Lista de definições de contêiner para o Aplicativo de Contêiner. Contêiner[]
initContainers Lista de contêineres especializados executados antes dos contêineres de aplicativo. InitContainer[]
revisionSuffix Sufixo amigável que é acrescentado ao nome de revisão string
scale Dimensionamento de propriedades para o Aplicativo de Contêiner. Escala
serviceBinds Lista de serviços de aplicativos de contêiner associados ao aplicativo ServiceBind[]
terminationGracePeriodSeconds Duração opcional em segundos que a Instância do Aplicativo de Contêiner precisa terminar normalmente. O valor deve ser um inteiro não negativo. O valor zero indica parar imediatamente por meio do sinal de encerramento (sem oportunidade de desligar). Se esse valor for zero, o período de carência padrão será usado. Defina esse valor por mais tempo do que o tempo de limpeza esperado para seu processo. O padrão é 30 segundos. INT
volumes Lista de definições de volume para o Aplicativo de Contêiner. Volume[]

Contêiner

Nome Descrição Valor
args Argumentos de comando de início do contêiner. string[]
. Comando de início do contêiner. string[]
env Variáveis de ambiente de contêiner. EnvironmentVar[]
image Marca de imagem de contêiner. string
name Nome do contêiner personalizado. string
investigações Lista de investigações para o contêiner. ContainerAppProbe[]
recursos Requisitos de recursos do contêiner. ContainerResources
volumeMounts Montagens de volume de contêiner. VolumeMount[]

EnvironmentVar

Nome Descrição Valor
name Nome da variável de ambiente. string
secretRef Nome do segredo do Aplicativo de Contêiner do qual extrair o valor da variável de ambiente. string
value Valor de variável de ambiente não secreto. string

ContainerAppProbe

Nome Descrição Valor
failureThreshold Falhas mínimas consecutivas para que a investigação seja considerada com falha depois de ter sido bem-sucedida. O valor padrão é 3. O valor mínimo é 1. O valor máximo é 10. INT
httpGet HTTPGet especifica a solicitação http a ser executada. ContainerAppProbeHttpGet
initialDelaySeconds Número de segundos depois que o contêiner é iniciado antes que as investigações de atividade sejam iniciadas. O valor mínimo é 1. O valor máximo é 60. INT
periodSeconds A frequência (em segundos) para realizar a investigação. O padrão é 10 segundos. O valor mínimo é 1. O valor máximo é 240. INT
successThreshold Mínimo de sucessos consecutivos para que a investigação seja considerada bem-sucedida após ter falhado. O valor padrão é 1. Deve ser 1 para a vida e a inicialização. O valor mínimo é 1. O valor máximo é 10. INT
tcpSocket TCPSocket especifica uma ação que envolve uma porta TCP. Ainda não há suporte para ganchos TCP. ContainerAppProbeTcpSocket
terminationGracePeriodSeconds Duração opcional em segundos em que o pod precisa terminar normalmente após a falha da investigação. O período de carência é a duração em segundos após os processos em execução no pod receberem um sinal de encerramento e a hora em que os processos são interrompidos à força com um sinal de encerramento. Defina esse valor por mais tempo do que o tempo de limpeza esperado para seu processo. Se esse valor for nulo, os terminationGracePeriodSeconds do pod serão usados. Caso contrário, esse valor substituirá o valor fornecido pela especificação de pod. O valor deve ser um inteiro não negativo. O valor zero indica parar imediatamente por meio do sinal de encerramento (sem oportunidade de desligar). Esse é um campo alfa e requer a habilitação do portão de recursos ProbeTerminationGracePeriod. O valor máximo é de 3600 segundos (1 hora) INT
timeoutSeconds Número de segundos após o qual a investigação atinge o tempo limite. O padrão é 1 segundo. O valor mínimo é 1. O valor máximo é 240. INT
tipo O tipo de investigação. "Liveness"
"Preparação"
"Inicialização"

ContainerAppProbeHttpGet

Nome Descrição Valor
host O nome do host ao qual se conectar, o padrão é o IP do pod. Você provavelmente deseja definir "Host" em httpHeaders. string
httpHeaders Cabeçalhos personalizados a serem definidos na solicitação. HTTP permite cabeçalhos repetidos. ContainerAppProbeHttpGetHttpHeadersItem[]
caminho Caminho para acessar no servidor HTTP. string
porta Nome ou número da porta a ser acessada no contêiner. O número deve estar no intervalo de 1 a 65535. O nome deve ser um IANA_SVC_NAME. int (obrigatório)
scheme Esquema a ser usado para se conectar ao host. O padrão é HTTP. "HTTP"
"HTTPS"

ContainerAppProbeHttpGetHttpHeadersItem

Nome Descrição Valor
name O nome do campo de cabeçalho cadeia de caracteres (obrigatório)
value O valor do campo de cabeçalho cadeia de caracteres (obrigatório)

ContainerAppProbeTcpSocket

Nome Descrição Valor
host Opcional: o nome do host ao qual se conectar, o padrão é o IP do pod. string
porta Número ou nome da porta a ser acessada no contêiner. O número deve estar no intervalo de 1 a 65535. O nome deve ser um IANA_SVC_NAME. int (obrigatório)

ContainerResources

Nome Descrição Valor
cpu CPU necessária em núcleos, por exemplo, 0,5 Especifique um valor decimal como uma cadeia de caracteres. int ou json decimal
memória Memória necessária, por exemplo, "250 Mb" string

VolumeMount

Nome Descrição Valor
mountPath Caminho dentro do contêiner no qual o volume deve ser montado. Não deve conter ':'. string
Subcaminho Caminho dentro do volume do qual o volume do contêiner deve ser montado. O padrão é "" (raiz do volume). string
volumeName Isso deve corresponder ao Nome de um Volume. string

InitContainer

Nome Descrição Valor
args Argumentos de comando de início de contêiner. string[]
. Comando de início do contêiner. string[]
env Variáveis de ambiente de contêiner. EnvironmentVar[]
image Marca de imagem de contêiner. string
name Nome do contêiner personalizado. string
recursos Requisitos de recursos do contêiner. ContainerResources
volumeMounts Montagens de volume de contêiner. VolumeMount[]

Escala

Nome Descrição Valor
maxReplicas Opcional. Número máximo de réplicas de contêiner. O padrão será 10 se não estiver definido. INT
minReplicas Opcional. Número mínimo de réplicas de contêiner. INT
regras Regras de dimensionamento. ScaleRule[]

ScaleRule

Nome Descrição Valor
azureQueue Dimensionamento baseado em fila do Azure. QueueScaleRule
custom Regra de escala personalizada. CustomScaleRule
http Dimensionamento baseado em solicitações HTTP. HttpScaleRule
name Nome da regra de escala string
TCP Escala baseada em solicitações Tcp. TcpScaleRule

QueueScaleRule

Nome Descrição Valor
auth Segredos de autenticação para a regra de escala de fila. ScaleRuleAuth[]
queueLength Comprimento da fila. INT
queueName Nome da fila. string

ScaleRuleAuth

Nome Descrição Valor
secretRef Nome do segredo do qual efetuar pull dos parâmetros de autenticação. string
triggerParameter Parâmetro trigger que usa o segredo string

CustomScaleRule

Nome Descrição Valor
auth Segredos de autenticação para a regra de escala personalizada. ScaleRuleAuth[]
metadata Propriedades de metadados para descrever a regra de escala personalizada. CustomScaleRuleMetadata
tipo Tipo da regra de escala personalizada
por exemplo: azure-servicebus, redis etc.
string

CustomScaleRuleMetadata

Nome Descrição Valor
{propriedade personalizada} string

HttpScaleRule

Nome Descrição Valor
auth Segredos de autenticação para a regra de escala personalizada. ScaleRuleAuth[]
metadata Propriedades de metadados para descrever a regra de escala http. HttpScaleRuleMetadata

HttpScaleRuleMetadata

Nome Descrição Valor
{propriedade personalizada} string

TcpScaleRule

Nome Descrição Valor
auth Segredos de autenticação para a regra de escala tcp. ScaleRuleAuth[]
metadata Propriedades de metadados para descrever a regra de escala tcp. TcpScaleRuleMetadata

TcpScaleRuleMetadata

Nome Descrição Valor
{propriedade personalizada} string

ServiceBind

Nome Descrição Valor
clientType Tipo do cliente a ser usado para se conectar ao serviço string
customizedKeys Chaves personalizadas para personalizar valores injetados no aplicativo ServiceBindCustomizedKeys
name Nome da associação de serviço string
serviceId ID do recurso do serviço de destino string

ServiceBindCustomizedKeys

Nome Descrição Valor
{propriedade personalizada} string

Volume

Nome Descrição Valor
mountOptions Opções de montagem usadas ao montar o compartilhamento de arquivos do Azure ou o compartilhamento de arquivos do Azure NFS. Deve ser uma cadeia de caracteres separada por vírgulas. string
name Nome do volume. string
segredos Lista de segredos a serem adicionados no volume. Se nenhum segredo for fornecido, todos os segredos na coleção serão adicionados ao volume. SecretVolumeItem[]
storageName Nome do recurso de armazenamento. Não é necessário fornecer para EmptyDir e Secret. string
storageType Tipo de armazenamento para o volume. Se não for fornecido, use EmptyDir. "AzureFile"
"EmptyDir"
"NfsAzureFile"
"Segredo"

SecretVolumeItem

Nome Descrição Valor
caminho Caminho para o qual o segredo do projeto será projetado. Se nenhum caminho for fornecido, o caminho usará como padrão o nome do segredo listado em secretRef. string
secretRef Nome do segredo do Aplicativo de Contêiner do qual extrair o valor do segredo. string