Definição de recurso de modelo do ARM
O tipo de recurso containerApps pode ser implantado com operações de destino:
Para obter uma lista de propriedades alteradas em cada versão da API, consulte de log de alterações.
Para criar um recurso de Microsoft.App/containerApps, adicione o JSON a seguir ao modelo.
{
"type": "Microsoft.App/containerApps",
"apiVersion": "2025-07-01",
"name": "string",
"extendedLocation": {
"name": "string",
"type": "string"
},
"identity": {
"type": "string",
"userAssignedIdentities": {
"{customized property}": {
}
}
},
"kind": "string",
"location": "string",
"managedBy": "string",
"properties": {
"configuration": {
"activeRevisionsMode": "string",
"dapr": {
"appHealth": {
"enabled": "bool",
"path": "string",
"probeIntervalSeconds": "int",
"probeTimeoutMilliseconds": "int",
"threshold": "int"
},
"appId": "string",
"appPort": "int",
"appProtocol": "string",
"enableApiLogging": "bool",
"enabled": "bool",
"httpMaxRequestSize": "int",
"httpReadBufferSize": "int",
"logLevel": "string",
"maxConcurrency": "int"
},
"identitySettings": [
{
"identity": "string",
"lifecycle": "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",
"traffic": [
{
"label": "string",
"latestRevision": "bool",
"revisionName": "string",
"weight": "int"
}
],
"transport": "string"
},
"maxInactiveRevisions": "int",
"registries": [
{
"identity": "string",
"passwordSecretRef": "string",
"server": "string",
"username": "string"
}
],
"runtime": {
"java": {
"enableMetrics": "bool"
}
},
"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": "int",
"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": "int",
"memory": "string"
},
"volumeMounts": [
{
"mountPath": "string",
"subPath": "string",
"volumeName": "string"
}
]
}
],
"revisionSuffix": "string",
"scale": {
"cooldownPeriod": "int",
"maxReplicas": "int",
"minReplicas": "int",
"pollingInterval": "int",
"rules": [
{
"azureQueue": {
"accountName": "string",
"auth": [
{
"secretRef": "string",
"triggerParameter": "string"
}
],
"identity": "string",
"queueLength": "int",
"queueName": "string"
},
"custom": {
"auth": [
{
"secretRef": "string",
"triggerParameter": "string"
}
],
"identity": "string",
"metadata": {
"{customized property}": "string"
},
"type": "string"
},
"http": {
"auth": [
{
"secretRef": "string",
"triggerParameter": "string"
}
],
"identity": "string",
"metadata": {
"{customized property}": "string"
}
},
"name": "string",
"tcp": {
"auth": [
{
"secretRef": "string",
"triggerParameter": "string"
}
],
"identity": "string",
"metadata": {
"{customized property}": "string"
}
}
}
]
},
"serviceBinds": [
{
"name": "string",
"serviceId": "string"
}
],
"terminationGracePeriodSeconds": "int",
"volumes": [
{
"mountOptions": "string",
"name": "string",
"secrets": [
{
"path": "string",
"secretRef": "string"
}
],
"storageName": "string",
"storageType": "string"
}
]
},
"workloadProfileName": "string"
},
"tags": {
"{customized property}": "string"
}
}
Valores da propriedade
Microsoft.App/containerApps
| Nome |
Descrição |
Valor |
| apiVersion |
A versão da API |
'2025-07-01' |
| localização estendida |
O tipo complexo do local estendido. |
Localização estendida |
| 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 |
| variante |
Metadados para representar o tipo de aplicativo de contêiner, representando se um aplicativo de contêiner é workflowapp ou functionapp. |
'aplicativo de função' 'aplicativo de fluxo de trabalho' |
| local |
A localização geográfica onde o recurso reside |
cadeia de caracteres (obrigatório) |
| gerenciadoPor |
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. |
cadeia |
| nome |
O nome do recurso |
cadeia de caracteres (obrigatório) |
| propriedades |
Propriedades específicas do recurso ContainerApp |
ContainerAppProperties |
| etiquetas |
Etiquetas de recursos |
Dicionário de nomes e valores de tags. Consulte Marcas em modelos |
| tipo |
O tipo de recurso |
'Microsoft.App/containerApps' |
Configuração
| Nome |
Descrição |
Valor |
| activeRevisionsMode |
ActiveRevisionsMode controla como as revisões ativas são tratadas para o aplicativo contêiner:
<lista><item>Múltiplo: várias revisões podem estar ativas.</item><item>Single: 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' 'Solteiro' |
| dapr (ambiente de execução para aplicativos distribuídos) |
Configuração de dapr para o Aplicativo de Contêiner. |
Dapr |
| Configurações de identidade |
Configurações opcionais para Identidades Gerenciadas atribuídas ao Aplicativo de Contêiner. Se uma Identidade Gerenciada não for especificada aqui, as configurações padrão serão usadas. |
Configurações de identidade |
| entrada |
Configurações de entrada. |
Entrada |
| maxInactiveRevisions |
Opcional. Revisões inativas máximas que um Aplicativo de Contêiner pode ter. |
int |
| Registros |
Coleção de credenciais de registro de contêiner privado para contêineres usados pelo aplicativo Contêiner |
Credenciais do Registro |
| runtime |
Configuração de runtime do aplicativo para o Aplicativo de Contêiner. |
Runtime |
| segredos |
Coleção de segredos usados por um aplicativo contêiner |
secret[] |
| serviço |
Aplicativo de contêiner para ser um serviço de aplicativo de contêiner de desenvolvimento |
Serviço |
Contêiner
| Nome |
Descrição |
Valor |
| argumentos |
Argumentos de comando de início de contêiner. |
cadeia de caracteres[] |
| comando |
Comando de início do contêiner. |
cadeia de caracteres[] |
| Env |
Variáveis de ambiente de contêiner. |
EnvironmentVar [] |
| imagem |
Marca de imagem de contêiner. |
cadeia |
| nome |
Nome do contêiner personalizado. |
cadeia |
| Sondas |
Lista de investigações para o contêiner. |
ContainerAppProbe [] |
| recursos |
Requisitos de recursos de contêiner. |
ContainerResources |
| volumeMounts |
Montagens de volume de contêiner. |
VolumeMount [] |
ContainerAppProbe
| Nome |
Descrição |
Valor |
| limite de falha |
Falhas consecutivas mínimas para que a investigação seja considerada falha após ter sido bem-sucedida. O 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 após o início do contêiner antes do início das investigações de atividade. O valor mínimo é 1. O valor máximo é 60. |
int |
| periodSegundos |
Com que frequência (em segundos) executar a investigação. Padrão para 10 segundos. O valor mínimo é 1. O valor máximo é 240. |
int |
| successThreshold |
Sucessos mínimos consecutivos para que a investigação seja considerada bem-sucedida após ter falhado. O padrão é 1. Deve ser 1 para animação e inicialização. O valor mínimo é 1. O valor máximo é 10. |
int |
| tcpSoquete |
O 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 depois que os processos em execução no pod são enviados um sinal de terminação e a hora em que os processos são interrompidos à força com um sinal de morte. Defina esse valor por mais tempo do que o tempo de limpeza esperado para o 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 do pod. O valor deve ser inteiro não negativo. O valor zero indica parar imediatamente por meio do sinal de eliminação (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 |
| timeoutSegundos |
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. |
'Vivacidade' 'Preparação' 'Inicialização' |
ContainerAppProbeHttpGet
| Nome |
Descrição |
Valor |
| hospedar |
O nome do host ao qual se conectar, o padrão é o IP do pod. Você provavelmente deseja definir "Host" em httpHeaders. |
cadeia |
| httpCabeçalhos |
Cabeçalhos personalizados a serem definidos na solicitação. HTTP permite cabeçalhos repetidos. |
ContainerAppProbeHttpGetHttpHeadersItem[] |
| caminho |
Caminho para acesso no servidor HTTP. |
cadeia |
| 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) |
| esquema |
Esquema a ser usado para se conectar ao host. O padrão é HTTP. |
'HTTP' 'HTTPS' |
| Nome |
Descrição |
Valor |
| nome |
O nome do campo de cabeçalho |
cadeia de caracteres (obrigatório) |
| valor |
O valor do campo de cabeçalho |
cadeia de caracteres (obrigatório) |
ContainerAppProbeTcpSocket
| Nome |
Descrição |
Valor |
| hospedar |
Opcional: nome do host ao qual se conectar, o padrão é o IP do pod. |
cadeia |
| 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) |
Propriedades do ContainerAppContêiner
| Nome |
Descrição |
Valor |
| configuração |
Propriedades de configuração do Aplicativo de Contêiner não com versão. |
Configuração |
| ID do ambiente |
ID do recurso do ambiente. |
cadeia |
| managedEnvironmentId |
Preterido. ID do recurso do ambiente do Aplicativo de Contêiner. |
cadeia |
| modelo |
Definição de aplicativo com versão do Aplicativo de Contêiner. |
Modelo |
| Nome do perfil da carga de trabalho |
Nome do perfil de carga de trabalho a ser fixado na execução do aplicativo de contêiner. |
cadeia |
Recursos de contêiner
| Nome |
Descrição |
Valor |
| CPU |
CPU necessária em núcleos, por exemplo, 0,5 |
int |
| memória |
Memória necessária, por exemplo, "250 Mb" |
cadeia |
CorsPolítica
| Nome |
Descrição |
Valor |
| allowCredentials |
Especifica se o recurso permite credenciais |
Bool |
| allowedHeaders |
Especifica o conteúdo do cabeçalho access-control-allow-headers |
cadeia de caracteres[] |
| allowedMethods |
Especifica o conteúdo do cabeçalho access-control-allow-methods |
cadeia de caracteres[] |
| 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 |
cadeia de caracteres[] |
| maxAge |
Especifica o conteúdo do cabeçalho access-control-max-age |
int |
Domínio personalizado
| Nome |
Descrição |
Valor |
| bindingType |
Tipo de associação de domínio personalizado. |
'Auto' 'Desabilitado' 'SniEnabled' |
| ID do certificado |
ID do recurso do Certificado a ser associado a esse nome de host. Deve existir no Ambiente Gerenciado. |
cadeia |
| nome |
Nome do host. |
cadeia de caracteres (obrigatório) |
Regra de escala personalizada
| Nome |
Descrição |
Valor |
| autenticação |
Segredos de autenticação para a regra de escala personalizada. |
ScaleRuleAuth [] |
| identidade |
A ID do recurso de uma identidade gerenciada atribuída pelo usuário atribuída ao Aplicativo de Contêiner ou "sistema" para a identidade atribuída pelo sistema. |
cadeia |
| metadados |
Propriedades de metadados para descrever a regra de escala personalizada. |
CustomScaleRuleMetadata |
| tipo |
Tipo da regra de escala personalizada por exemplo: azure-servicebus, redis etc. |
cadeia |
Dapr
| Nome |
Descrição |
Valor |
| appHealth |
Configuração de verificação de integridade do aplicativo do Dapr |
DaprAppHealth |
| ID do aplicativo |
Identificador de aplicativo dapr |
cadeia |
| appPort |
Informa à 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 da Dapr |
Bool |
| Habilitado |
Booliano indicando se o carro lateral 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 dapr do buffer de leitura de cabeçalho http em KB para manipular ao enviar cabeçalhos de vários KB. O padrão é 65 KB. |
int |
| Nível de log |
Define o nível de log para o sidecar Dapr. Os valores permitidos são depuração, informações, aviso, erro. O padrão são as informações. |
'depuração' 'erro' 'informações' 'avisar' |
| maxSimultaneidade |
Número máximo de solicitações simultâneas, eventos manipulados pelo sidecar do Dapr |
int |
DaprAppHealth
| Nome |
Descrição |
Valor |
| Habilitado |
Booleano indicando se a investigação de integridade está habilitada |
Bool |
| caminho |
Caminho para a investigação de integridade |
cadeia |
| sondaIntervalSegundos |
Intervalo para a investigação de integridade em segundos |
int
Restrições: Valor mínimo = 1 |
| sondaTimeoutMilissegundos |
Tempo limite para a investigação de integridade em milissegundos |
int
Restrições: Valor mínimo = 1 |
| limite |
Limite para a investigação de integridade |
int
Restrições: Valor mínimo = 1 |
Var Ambiente
| Nome |
Descrição |
Valor |
| nome |
Nome da variável de ambiente. |
cadeia |
| secretRef |
Nome do segredo do Aplicativo de Contêiner do qual extrair o valor da variável de ambiente. |
cadeia |
| valor |
Valor de variável de ambiente não secreto. |
cadeia |
Localização estendida
| Nome |
Descrição |
Valor |
| nome |
O nome do local estendido. |
cadeia |
| tipo |
O tipo de local estendido. |
'Localização Personalizada' |
Regra de escala http
| Nome |
Descrição |
Valor |
| autenticação |
Segredos de autenticação para a regra de escala personalizada. |
ScaleRuleAuth [] |
| identidade |
A ID do recurso de uma identidade gerenciada atribuída pelo usuário atribuída ao Aplicativo de Contêiner ou "sistema" para a identidade atribuída pelo sistema. |
cadeia |
| metadados |
Propriedades de metadados para descrever a regra de escala http. |
HttpScaleRuleMetadata |
Configurações de identidade
| Nome |
Descrição |
Valor |
| identidade |
A ID do recurso de uma identidade gerenciada atribuída pelo usuário atribuída ao Aplicativo de Contêiner ou "sistema" para a identidade atribuída pelo sistema. |
cadeia de caracteres (obrigatório) |
| ciclo de vida |
Use para selecionar os estágios do ciclo de vida de um aplicativo de contêiner durante o qual a Identidade Gerenciada deve estar disponível. |
'Todos' 'Inicialização' 'Principal' 'Nenhum' |
Entrada
| Nome |
Descrição |
Valor |
| additionalPortMappings |
Configurações para expor portas adicionais no aplicativo de contêiner |
IngressPortMapping [] |
| permitirInseguro |
Bool indicando se as conexões HTTP são permitidas. Se definidas como conexões HTTP falsas forem redirecionadas 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. Aceitar 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' |
| corsPolítica |
Política cors para aplicativo de contêiner |
CorsPolicy |
| Domínios personalizados |
associações de domínio personalizadas para nomes de host dos Aplicativos de Contêiner. |
CustomDomain [] |
| expostoPortuário |
Porta exposta em contêineres para tráfego TCP de entrada |
int |
| externo |
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 |
| tráfego |
Pesos de tráfego para revisões do aplicativo |
trafficweight [] |
| transportar |
Protocolo de transporte de entrada |
automóvel 'http' 'http2' 'tcp' |
Mapeamento de IngressPortMapping
| Nome |
Descrição |
Valor |
| expostoPortuário |
Especifica a porta exposta para a porta de destino. Se não for especificado, ele usará como padrão a porta de destino |
int |
| externo |
Especifica se a porta do aplicativo está acessível fora do ambiente |
bool (obrigatório) |
| targetPort |
Especifica as escutas do contêiner do usuário de porta |
int (obrigatório) |
IngressStickySessions
| Nome |
Descrição |
Valor |
| afinidade |
Afinidade de sessão autoadesiva |
'nenhum' 'autoadesiva' |
InitContainer
| Nome |
Descrição |
Valor |
| argumentos |
Argumentos de comando de início de contêiner. |
cadeia de caracteres[] |
| comando |
Comando de início do contêiner. |
cadeia de caracteres[] |
| Env |
Variáveis de ambiente de contêiner. |
EnvironmentVar [] |
| imagem |
Marca de imagem de contêiner. |
cadeia |
| nome |
Nome do contêiner personalizado. |
cadeia |
| recursos |
Requisitos de recursos de contêiner. |
ContainerResources |
| volumeMounts |
Montagens de volume de contêiner. |
VolumeMount [] |
Regra de restrição de segurança IpSecurity
| 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' 'Deny' (obrigatório) |
| descrição |
Descreva a regra de restrição de IP que está sendo enviada para o aplicativo de contêiner. Esse é um campo opcional. |
cadeia |
| Intervalo de endereços IP |
Notação CIDR para corresponder ao endereço IP de entrada |
cadeia de caracteres (obrigatório) |
| nome |
Nome da regra de restrição de IP. |
cadeia de caracteres (obrigatório) |
ManagedServiceIdentity
| Nome |
Descrição |
Valor |
| tipo |
Tipo de identidade de serviço gerenciado (em que os tipos SystemAssigned e UserAssigned são permitidos). |
'Nenhum' 'SystemAssigned' 'SystemAssigned,UserAssigned' 'UserAssigned' (obrigatório) |
| Identidades Atribuídas pelo Usuário |
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 do dicionário podem ser objetos vazios ({}) em solicitações. |
UserAssignedIdentities |
Regra de Escala de Fila
| Nome |
Descrição |
Valor |
| nome da conta |
Nome da conta de armazenamento. necessário se estiver usando a identidade gerenciada para autenticar |
cadeia |
| autenticação |
Segredos de autenticação para a regra de escala de fila. |
ScaleRuleAuth [] |
| identidade |
A ID do recurso de uma identidade gerenciada atribuída pelo usuário atribuída ao Aplicativo de Contêiner ou "sistema" para a identidade atribuída pelo sistema. |
cadeia |
| queueLength |
Comprimento da fila. |
int |
| nome_da_fila |
Nome da fila. |
cadeia |
Credenciais do Registro
| Nome |
Descrição |
Valor |
| identidade |
Uma Identidade Gerenciada a ser usada para autenticar com o 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' |
cadeia |
| passwordSecretRef |
O nome do Segredo que contém a senha de logon do Registro |
cadeia |
| servidor |
Servidor do Registro de Contêiner |
cadeia |
| nome de usuário |
Nome de usuário do Registro de Contêiner |
cadeia |
Tempo de Execução
| Nome |
Descrição |
Valor |
| Java |
Configuração do aplicativo Java |
runtimeJava |
Tempo de execuçãoJava
| Nome |
Descrição |
Valor |
| enableMetrics |
Habilitar métricas do jmx core para o aplicativo java |
Bool |
Escala
| Nome |
Descrição |
Valor |
| período de espera |
Opcional. Período de resfriamento KEDA em segundos. O padrão é 300 segundos se não for definido. |
int |
| maxReplicas |
Opcional. Número máximo de réplicas de contêiner. O padrão é 10 se não for definido. |
int |
| minReplicas |
Opcional. Número mínimo de réplicas de contêiner. |
int |
| pollingInterval |
Opcional. Intervalo de sondagem KEDA em segundos. O padrão será de 30 segundos se não for definido. |
int |
| regras |
Regras de dimensionamento. |
ScaleRule [] |
Regra de escala
| Nome |
Descrição |
Valor |
| azureQueue |
Dimensionamento baseado em Fila do Azure. |
Regra de Escala de Fila |
| personalizado |
Regra de escala personalizada. |
CustomScaleRule |
| http |
Dimensionamento baseado em solicitações HTTP. |
httpScaleRule |
| nome |
Nome da regra de escala |
cadeia |
| TCP |
Escala baseada em solicitações Tcp. |
TcpScaleRule |
ScaleRuleAuth
| Nome |
Descrição |
Valor |
| secretRef |
Nome do segredo do qual efetuar pull dos parâmetros de autenticação. |
cadeia |
| triggerParameter |
Parâmetro de gatilho que usa o segredo |
cadeia |
Segredo
| Nome |
Descrição |
Valor |
| identidade |
ID de recurso de uma identidade gerenciada para autenticar com o Azure Key Vault ou o Sistema para usar uma identidade atribuída pelo sistema. |
cadeia |
| keyVaultUrl |
URL do Azure Key Vault apontando para o segredo referenciado pelo aplicativo de contêiner. |
cadeia |
| nome |
Nome do segredo. |
cadeia |
| valor |
Valor secreto. |
cadeia de caracteres
Restrições: Valor confidencial. Passe como um parâmetro seguro. |
SecretVolumeItem
| Nome |
Descrição |
Valor |
| caminho |
Caminho para o segredo do projeto. Se nenhum caminho for fornecido, o caminho usará como padrão o nome do segredo listado em secretRef. |
cadeia |
| secretRef |
Nome do segredo do Aplicativo de Contêiner do qual extrair o valor do segredo. |
cadeia |
Serviço
| Nome |
Descrição |
Valor |
| tipo |
Tipo de serviço Dev ContainerApp |
cadeia de caracteres (obrigatório) |
Ligação de serviço
| Nome |
Descrição |
Valor |
| nome |
Nome da associação de serviço |
cadeia |
| ID do serviço |
ID do recurso do serviço de destino |
cadeia |
TcpScaleRule
| Nome |
Descrição |
Valor |
| autenticação |
Segredos de autenticação para a regra de escala tcp. |
ScaleRuleAuth [] |
| identidade |
A ID do recurso de uma identidade gerenciada atribuída pelo usuário atribuída ao Aplicativo de Contêiner ou "sistema" para a identidade atribuída pelo sistema. |
cadeia |
| metadados |
Propriedades de metadados para descrever a regra de escala tcp. |
TcpScaleRuleMetadata |
Modelo
| Nome |
Descrição |
Valor |
| Recipientes |
Lista de definições de contêiner para o Aplicativo de Contêiner. |
de contêiner [] |
| Contêineres de inicialização |
Lista de contêineres especializados que são executados antes dos contêineres de aplicativo. |
initContainer[] |
| revisionSufixo |
Sufixo amigável que é acrescentado ao nome da revisão |
cadeia |
| ajustar escala |
Dimensionamento de propriedades para o Aplicativo de Contêiner. |
Escala |
| serviceBinds |
Lista de serviços de aplicativo 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 inteiro não negativo. O valor zero indica parar imediatamente por meio do sinal de eliminação (sem oportunidade de desligar). Se esse valor for nulo, o período de carência padrão será usado. Defina esse valor por mais tempo do que o tempo de limpeza esperado para o processo. O padrão é 30 segundos. |
int |
| Volumes |
Lista de definições de volume para o Aplicativo de Contêiner. |
de volume [] |
Peso do tráfego
| Nome |
Descrição |
Valor |
| etiqueta |
Associa um rótulo de tráfego a uma revisão |
cadeia |
| mais recenteRevisão |
Indica que o peso do tráfego pertence a uma revisão estável mais recente |
Bool |
| nome_de_revisão |
Nome de uma revisão |
cadeia |
| peso |
Peso do tráfego atribuído a uma revisão |
int |
UserAssignedIdentities
UserAssignedIdentity
Volume
| Nome |
Descrição |
Valor |
| opções de montagem |
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írgula. |
cadeia |
| nome |
Nome do volume. |
cadeia |
| segredos |
Lista de segredos a serem adicionados no volume. Se nenhum segredo for fornecido, todos os segredos da coleção serão adicionados ao volume. |
SecretVolumeItem [] |
| nome do armazenamento |
Nome do recurso de armazenamento. Não é necessário fornecer para EmptyDir e Secret. |
cadeia |
| tipo de armazenamento |
Tipo de armazenamento para o volume. Se não for fornecido, use EmptyDir. |
'AzureFile' 'EmptyDir' 'NfsAzureFile' 'Segredo' |
Montagem de volume
| Nome |
Descrição |
Valor |
| caminho de montagem |
Caminho dentro do contêiner no qual o volume deve ser montado. Não deve conter ':'. |
cadeia |
| subCaminho |
Caminho dentro do volume do qual o volume do contêiner deve ser montado. O padrão é "" (raiz do volume). |
cadeia |
| nome do volume |
Isso deve corresponder ao nome de um volume. |
cadeia |
Exemplos de uso
Modelos de início rápido do Azure
Os modelos de Início Rápido do Azure a seguir implantar esse tipo de recurso.
O tipo de recurso containerApps pode ser implantado com operações de destino:
Para obter uma lista de propriedades alteradas em cada versão da API, consulte de log de alterações.
Para criar um recurso de Microsoft.App/containerApps, adicione o Terraform a seguir ao seu modelo.
resource "azapi_resource" "symbolicname" {
type = "Microsoft.App/containerApps@2025-07-01"
name = "string"
parent_id = "string"
identity {
type = "string"
identity_ids = [
"string"
]
}
location = "string"
tags = {
{customized property} = "string"
}
body = {
extendedLocation = {
name = "string"
type = "string"
}
kind = "string"
managedBy = "string"
properties = {
configuration = {
activeRevisionsMode = "string"
dapr = {
appHealth = {
enabled = bool
path = "string"
probeIntervalSeconds = int
probeTimeoutMilliseconds = int
threshold = int
}
appId = "string"
appPort = int
appProtocol = "string"
enableApiLogging = bool
enabled = bool
httpMaxRequestSize = int
httpReadBufferSize = int
logLevel = "string"
maxConcurrency = int
}
identitySettings = [
{
identity = "string"
lifecycle = "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
traffic = [
{
label = "string"
latestRevision = bool
revisionName = "string"
weight = int
}
]
transport = "string"
}
maxInactiveRevisions = int
registries = [
{
identity = "string"
passwordSecretRef = "string"
server = "string"
username = "string"
}
]
runtime = {
java = {
enableMetrics = bool
}
}
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 = int
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 = int
memory = "string"
}
volumeMounts = [
{
mountPath = "string"
subPath = "string"
volumeName = "string"
}
]
}
]
revisionSuffix = "string"
scale = {
cooldownPeriod = int
maxReplicas = int
minReplicas = int
pollingInterval = int
rules = [
{
azureQueue = {
accountName = "string"
auth = [
{
secretRef = "string"
triggerParameter = "string"
}
]
identity = "string"
queueLength = int
queueName = "string"
}
custom = {
auth = [
{
secretRef = "string"
triggerParameter = "string"
}
]
identity = "string"
metadata = {
{customized property} = "string"
}
type = "string"
}
http = {
auth = [
{
secretRef = "string"
triggerParameter = "string"
}
]
identity = "string"
metadata = {
{customized property} = "string"
}
}
name = "string"
tcp = {
auth = [
{
secretRef = "string"
triggerParameter = "string"
}
]
identity = "string"
metadata = {
{customized property} = "string"
}
}
}
]
}
serviceBinds = [
{
name = "string"
serviceId = "string"
}
]
terminationGracePeriodSeconds = int
volumes = [
{
mountOptions = "string"
name = "string"
secrets = [
{
path = "string"
secretRef = "string"
}
]
storageName = "string"
storageType = "string"
}
]
}
workloadProfileName = "string"
}
}
}
Valores da propriedade
Microsoft.App/containerApps
| Nome |
Descrição |
Valor |
| localização estendida |
O tipo complexo do local estendido. |
Localização estendida |
| 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 |
| variante |
Metadados para representar o tipo de aplicativo de contêiner, representando se um aplicativo de contêiner é workflowapp ou functionapp. |
'aplicativo de função' 'aplicativo de fluxo de trabalho' |
| local |
A localização geográfica onde o recurso reside |
cadeia de caracteres (obrigatório) |
| gerenciadoPor |
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. |
cadeia |
| nome |
O nome do recurso |
cadeia de caracteres (obrigatório) |
| parent_id |
A ID do recurso ao qual aplicar esse recurso de extensão. |
cadeia de caracteres (obrigatório) |
| propriedades |
Propriedades específicas do recurso ContainerApp |
ContainerAppProperties |
| etiquetas |
Etiquetas de recursos |
Dicionário de nomes e valores de tags. |
| tipo |
O tipo de recurso |
"Microsoft.App/containerApps@2025-07-01" |
Configuração
| Nome |
Descrição |
Valor |
| activeRevisionsMode |
ActiveRevisionsMode controla como as revisões ativas são tratadas para o aplicativo contêiner:
<lista><item>Múltiplo: várias revisões podem estar ativas.</item><item>Single: 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' 'Solteiro' |
| dapr (ambiente de execução para aplicativos distribuídos) |
Configuração de dapr para o Aplicativo de Contêiner. |
Dapr |
| Configurações de identidade |
Configurações opcionais para Identidades Gerenciadas atribuídas ao Aplicativo de Contêiner. Se uma Identidade Gerenciada não for especificada aqui, as configurações padrão serão usadas. |
Configurações de identidade |
| entrada |
Configurações de entrada. |
Entrada |
| maxInactiveRevisions |
Opcional. Revisões inativas máximas que um Aplicativo de Contêiner pode ter. |
int |
| Registros |
Coleção de credenciais de registro de contêiner privado para contêineres usados pelo aplicativo Contêiner |
Credenciais do Registro |
| runtime |
Configuração de runtime do aplicativo para o Aplicativo de Contêiner. |
Runtime |
| segredos |
Coleção de segredos usados por um aplicativo contêiner |
secret[] |
| serviço |
Aplicativo de contêiner para ser um serviço de aplicativo de contêiner de desenvolvimento |
Serviço |
Contêiner
| Nome |
Descrição |
Valor |
| argumentos |
Argumentos de comando de início de contêiner. |
cadeia de caracteres[] |
| comando |
Comando de início do contêiner. |
cadeia de caracteres[] |
| Env |
Variáveis de ambiente de contêiner. |
EnvironmentVar [] |
| imagem |
Marca de imagem de contêiner. |
cadeia |
| nome |
Nome do contêiner personalizado. |
cadeia |
| Sondas |
Lista de investigações para o contêiner. |
ContainerAppProbe [] |
| recursos |
Requisitos de recursos de contêiner. |
ContainerResources |
| volumeMounts |
Montagens de volume de contêiner. |
VolumeMount [] |
ContainerAppProbe
| Nome |
Descrição |
Valor |
| limite de falha |
Falhas consecutivas mínimas para que a investigação seja considerada falha após ter sido bem-sucedida. O 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 após o início do contêiner antes do início das investigações de atividade. O valor mínimo é 1. O valor máximo é 60. |
int |
| periodSegundos |
Com que frequência (em segundos) executar a investigação. Padrão para 10 segundos. O valor mínimo é 1. O valor máximo é 240. |
int |
| successThreshold |
Sucessos mínimos consecutivos para que a investigação seja considerada bem-sucedida após ter falhado. O padrão é 1. Deve ser 1 para animação e inicialização. O valor mínimo é 1. O valor máximo é 10. |
int |
| tcpSoquete |
O 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 depois que os processos em execução no pod são enviados um sinal de terminação e a hora em que os processos são interrompidos à força com um sinal de morte. Defina esse valor por mais tempo do que o tempo de limpeza esperado para o 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 do pod. O valor deve ser inteiro não negativo. O valor zero indica parar imediatamente por meio do sinal de eliminação (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 |
| timeoutSegundos |
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. |
'Vivacidade' 'Preparação' 'Inicialização' |
ContainerAppProbeHttpGet
| Nome |
Descrição |
Valor |
| hospedar |
O nome do host ao qual se conectar, o padrão é o IP do pod. Você provavelmente deseja definir "Host" em httpHeaders. |
cadeia |
| httpCabeçalhos |
Cabeçalhos personalizados a serem definidos na solicitação. HTTP permite cabeçalhos repetidos. |
ContainerAppProbeHttpGetHttpHeadersItem[] |
| caminho |
Caminho para acesso no servidor HTTP. |
cadeia |
| 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) |
| esquema |
Esquema a ser usado para se conectar ao host. O padrão é HTTP. |
'HTTP' 'HTTPS' |
| Nome |
Descrição |
Valor |
| nome |
O nome do campo de cabeçalho |
cadeia de caracteres (obrigatório) |
| valor |
O valor do campo de cabeçalho |
cadeia de caracteres (obrigatório) |
ContainerAppProbeTcpSocket
| Nome |
Descrição |
Valor |
| hospedar |
Opcional: nome do host ao qual se conectar, o padrão é o IP do pod. |
cadeia |
| 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) |
Propriedades do ContainerAppContêiner
| Nome |
Descrição |
Valor |
| configuração |
Propriedades de configuração do Aplicativo de Contêiner não com versão. |
Configuração |
| ID do ambiente |
ID do recurso do ambiente. |
cadeia |
| managedEnvironmentId |
Preterido. ID do recurso do ambiente do Aplicativo de Contêiner. |
cadeia |
| modelo |
Definição de aplicativo com versão do Aplicativo de Contêiner. |
Modelo |
| Nome do perfil da carga de trabalho |
Nome do perfil de carga de trabalho a ser fixado na execução do aplicativo de contêiner. |
cadeia |
Recursos de contêiner
| Nome |
Descrição |
Valor |
| CPU |
CPU necessária em núcleos, por exemplo, 0,5 |
int |
| memória |
Memória necessária, por exemplo, "250 Mb" |
cadeia |
CorsPolítica
| Nome |
Descrição |
Valor |
| allowCredentials |
Especifica se o recurso permite credenciais |
Bool |
| allowedHeaders |
Especifica o conteúdo do cabeçalho access-control-allow-headers |
cadeia de caracteres[] |
| allowedMethods |
Especifica o conteúdo do cabeçalho access-control-allow-methods |
cadeia de caracteres[] |
| 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 |
cadeia de caracteres[] |
| maxAge |
Especifica o conteúdo do cabeçalho access-control-max-age |
int |
Domínio personalizado
| Nome |
Descrição |
Valor |
| bindingType |
Tipo de associação de domínio personalizado. |
'Auto' 'Desabilitado' 'SniEnabled' |
| ID do certificado |
ID do recurso do Certificado a ser associado a esse nome de host. Deve existir no Ambiente Gerenciado. |
cadeia |
| nome |
Nome do host. |
cadeia de caracteres (obrigatório) |
Regra de escala personalizada
| Nome |
Descrição |
Valor |
| autenticação |
Segredos de autenticação para a regra de escala personalizada. |
ScaleRuleAuth [] |
| identidade |
A ID do recurso de uma identidade gerenciada atribuída pelo usuário atribuída ao Aplicativo de Contêiner ou "sistema" para a identidade atribuída pelo sistema. |
cadeia |
| metadados |
Propriedades de metadados para descrever a regra de escala personalizada. |
CustomScaleRuleMetadata |
| tipo |
Tipo da regra de escala personalizada por exemplo: azure-servicebus, redis etc. |
cadeia |
Dapr
| Nome |
Descrição |
Valor |
| appHealth |
Configuração de verificação de integridade do aplicativo do Dapr |
DaprAppHealth |
| ID do aplicativo |
Identificador de aplicativo dapr |
cadeia |
| appPort |
Informa à 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 da Dapr |
Bool |
| Habilitado |
Booliano indicando se o carro lateral 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 dapr do buffer de leitura de cabeçalho http em KB para manipular ao enviar cabeçalhos de vários KB. O padrão é 65 KB. |
int |
| Nível de log |
Define o nível de log para o sidecar Dapr. Os valores permitidos são depuração, informações, aviso, erro. O padrão são as informações. |
'depuração' 'erro' 'informações' 'avisar' |
| maxSimultaneidade |
Número máximo de solicitações simultâneas, eventos manipulados pelo sidecar do Dapr |
int |
DaprAppHealth
| Nome |
Descrição |
Valor |
| Habilitado |
Booleano indicando se a investigação de integridade está habilitada |
Bool |
| caminho |
Caminho para a investigação de integridade |
cadeia |
| sondaIntervalSegundos |
Intervalo para a investigação de integridade em segundos |
int
Restrições: Valor mínimo = 1 |
| sondaTimeoutMilissegundos |
Tempo limite para a investigação de integridade em milissegundos |
int
Restrições: Valor mínimo = 1 |
| limite |
Limite para a investigação de integridade |
int
Restrições: Valor mínimo = 1 |
Var Ambiente
| Nome |
Descrição |
Valor |
| nome |
Nome da variável de ambiente. |
cadeia |
| secretRef |
Nome do segredo do Aplicativo de Contêiner do qual extrair o valor da variável de ambiente. |
cadeia |
| valor |
Valor de variável de ambiente não secreto. |
cadeia |
Localização estendida
| Nome |
Descrição |
Valor |
| nome |
O nome do local estendido. |
cadeia |
| tipo |
O tipo de local estendido. |
'Localização Personalizada' |
Regra de escala http
| Nome |
Descrição |
Valor |
| autenticação |
Segredos de autenticação para a regra de escala personalizada. |
ScaleRuleAuth [] |
| identidade |
A ID do recurso de uma identidade gerenciada atribuída pelo usuário atribuída ao Aplicativo de Contêiner ou "sistema" para a identidade atribuída pelo sistema. |
cadeia |
| metadados |
Propriedades de metadados para descrever a regra de escala http. |
HttpScaleRuleMetadata |
Configurações de identidade
| Nome |
Descrição |
Valor |
| identidade |
A ID do recurso de uma identidade gerenciada atribuída pelo usuário atribuída ao Aplicativo de Contêiner ou "sistema" para a identidade atribuída pelo sistema. |
cadeia de caracteres (obrigatório) |
| ciclo de vida |
Use para selecionar os estágios do ciclo de vida de um aplicativo de contêiner durante o qual a Identidade Gerenciada deve estar disponível. |
'Todos' 'Inicialização' 'Principal' 'Nenhum' |
Entrada
| Nome |
Descrição |
Valor |
| additionalPortMappings |
Configurações para expor portas adicionais no aplicativo de contêiner |
IngressPortMapping [] |
| permitirInseguro |
Bool indicando se as conexões HTTP são permitidas. Se definidas como conexões HTTP falsas forem redirecionadas 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. Aceitar 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' |
| corsPolítica |
Política cors para aplicativo de contêiner |
CorsPolicy |
| Domínios personalizados |
associações de domínio personalizadas para nomes de host dos Aplicativos de Contêiner. |
CustomDomain [] |
| expostoPortuário |
Porta exposta em contêineres para tráfego TCP de entrada |
int |
| externo |
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 |
| tráfego |
Pesos de tráfego para revisões do aplicativo |
trafficweight [] |
| transportar |
Protocolo de transporte de entrada |
automóvel 'http' 'http2' 'tcp' |
Mapeamento de IngressPortMapping
| Nome |
Descrição |
Valor |
| expostoPortuário |
Especifica a porta exposta para a porta de destino. Se não for especificado, ele usará como padrão a porta de destino |
int |
| externo |
Especifica se a porta do aplicativo está acessível fora do ambiente |
bool (obrigatório) |
| targetPort |
Especifica as escutas do contêiner do usuário de porta |
int (obrigatório) |
IngressStickySessions
| Nome |
Descrição |
Valor |
| afinidade |
Afinidade de sessão autoadesiva |
'nenhum' 'autoadesiva' |
InitContainer
| Nome |
Descrição |
Valor |
| argumentos |
Argumentos de comando de início de contêiner. |
cadeia de caracteres[] |
| comando |
Comando de início do contêiner. |
cadeia de caracteres[] |
| Env |
Variáveis de ambiente de contêiner. |
EnvironmentVar [] |
| imagem |
Marca de imagem de contêiner. |
cadeia |
| nome |
Nome do contêiner personalizado. |
cadeia |
| recursos |
Requisitos de recursos de contêiner. |
ContainerResources |
| volumeMounts |
Montagens de volume de contêiner. |
VolumeMount [] |
Regra de restrição de segurança IpSecurity
| 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' 'Deny' (obrigatório) |
| descrição |
Descreva a regra de restrição de IP que está sendo enviada para o aplicativo de contêiner. Esse é um campo opcional. |
cadeia |
| Intervalo de endereços IP |
Notação CIDR para corresponder ao endereço IP de entrada |
cadeia de caracteres (obrigatório) |
| nome |
Nome da regra de restrição de IP. |
cadeia de caracteres (obrigatório) |
ManagedServiceIdentity
| Nome |
Descrição |
Valor |
| tipo |
Tipo de identidade de serviço gerenciado (em que os tipos SystemAssigned e UserAssigned são permitidos). |
'Nenhum' 'SystemAssigned' 'SystemAssigned,UserAssigned' 'UserAssigned' (obrigatório) |
| Identidades Atribuídas pelo Usuário |
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 do dicionário podem ser objetos vazios ({}) em solicitações. |
UserAssignedIdentities |
Regra de Escala de Fila
| Nome |
Descrição |
Valor |
| nome da conta |
Nome da conta de armazenamento. necessário se estiver usando a identidade gerenciada para autenticar |
cadeia |
| autenticação |
Segredos de autenticação para a regra de escala de fila. |
ScaleRuleAuth [] |
| identidade |
A ID do recurso de uma identidade gerenciada atribuída pelo usuário atribuída ao Aplicativo de Contêiner ou "sistema" para a identidade atribuída pelo sistema. |
cadeia |
| queueLength |
Comprimento da fila. |
int |
| nome_da_fila |
Nome da fila. |
cadeia |
Credenciais do Registro
| Nome |
Descrição |
Valor |
| identidade |
Uma Identidade Gerenciada a ser usada para autenticar com o 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' |
cadeia |
| passwordSecretRef |
O nome do Segredo que contém a senha de logon do Registro |
cadeia |
| servidor |
Servidor do Registro de Contêiner |
cadeia |
| nome de usuário |
Nome de usuário do Registro de Contêiner |
cadeia |
Tempo de Execução
| Nome |
Descrição |
Valor |
| Java |
Configuração do aplicativo Java |
runtimeJava |
Tempo de execuçãoJava
| Nome |
Descrição |
Valor |
| enableMetrics |
Habilitar métricas do jmx core para o aplicativo java |
Bool |
Escala
| Nome |
Descrição |
Valor |
| período de espera |
Opcional. Período de resfriamento KEDA em segundos. O padrão é 300 segundos se não for definido. |
int |
| maxReplicas |
Opcional. Número máximo de réplicas de contêiner. O padrão é 10 se não for definido. |
int |
| minReplicas |
Opcional. Número mínimo de réplicas de contêiner. |
int |
| pollingInterval |
Opcional. Intervalo de sondagem KEDA em segundos. O padrão será de 30 segundos se não for definido. |
int |
| regras |
Regras de dimensionamento. |
ScaleRule [] |
Regra de escala
| Nome |
Descrição |
Valor |
| azureQueue |
Dimensionamento baseado em Fila do Azure. |
Regra de Escala de Fila |
| personalizado |
Regra de escala personalizada. |
CustomScaleRule |
| http |
Dimensionamento baseado em solicitações HTTP. |
httpScaleRule |
| nome |
Nome da regra de escala |
cadeia |
| TCP |
Escala baseada em solicitações Tcp. |
TcpScaleRule |
ScaleRuleAuth
| Nome |
Descrição |
Valor |
| secretRef |
Nome do segredo do qual efetuar pull dos parâmetros de autenticação. |
cadeia |
| triggerParameter |
Parâmetro de gatilho que usa o segredo |
cadeia |
Segredo
| Nome |
Descrição |
Valor |
| identidade |
ID de recurso de uma identidade gerenciada para autenticar com o Azure Key Vault ou o Sistema para usar uma identidade atribuída pelo sistema. |
cadeia |
| keyVaultUrl |
URL do Azure Key Vault apontando para o segredo referenciado pelo aplicativo de contêiner. |
cadeia |
| nome |
Nome do segredo. |
cadeia |
| valor |
Valor secreto. |
cadeia de caracteres
Restrições: Valor confidencial. Passe como um parâmetro seguro. |
SecretVolumeItem
| Nome |
Descrição |
Valor |
| caminho |
Caminho para o segredo do projeto. Se nenhum caminho for fornecido, o caminho usará como padrão o nome do segredo listado em secretRef. |
cadeia |
| secretRef |
Nome do segredo do Aplicativo de Contêiner do qual extrair o valor do segredo. |
cadeia |
Serviço
| Nome |
Descrição |
Valor |
| tipo |
Tipo de serviço Dev ContainerApp |
cadeia de caracteres (obrigatório) |
Ligação de serviço
| Nome |
Descrição |
Valor |
| nome |
Nome da associação de serviço |
cadeia |
| ID do serviço |
ID do recurso do serviço de destino |
cadeia |
TcpScaleRule
| Nome |
Descrição |
Valor |
| autenticação |
Segredos de autenticação para a regra de escala tcp. |
ScaleRuleAuth [] |
| identidade |
A ID do recurso de uma identidade gerenciada atribuída pelo usuário atribuída ao Aplicativo de Contêiner ou "sistema" para a identidade atribuída pelo sistema. |
cadeia |
| metadados |
Propriedades de metadados para descrever a regra de escala tcp. |
TcpScaleRuleMetadata |
Modelo
| Nome |
Descrição |
Valor |
| Recipientes |
Lista de definições de contêiner para o Aplicativo de Contêiner. |
de contêiner [] |
| Contêineres de inicialização |
Lista de contêineres especializados que são executados antes dos contêineres de aplicativo. |
initContainer[] |
| revisionSufixo |
Sufixo amigável que é acrescentado ao nome da revisão |
cadeia |
| ajustar escala |
Dimensionamento de propriedades para o Aplicativo de Contêiner. |
Escala |
| serviceBinds |
Lista de serviços de aplicativo 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 inteiro não negativo. O valor zero indica parar imediatamente por meio do sinal de eliminação (sem oportunidade de desligar). Se esse valor for nulo, o período de carência padrão será usado. Defina esse valor por mais tempo do que o tempo de limpeza esperado para o processo. O padrão é 30 segundos. |
int |
| Volumes |
Lista de definições de volume para o Aplicativo de Contêiner. |
de volume [] |
Peso do tráfego
| Nome |
Descrição |
Valor |
| etiqueta |
Associa um rótulo de tráfego a uma revisão |
cadeia |
| mais recenteRevisão |
Indica que o peso do tráfego pertence a uma revisão estável mais recente |
Bool |
| nome_de_revisão |
Nome de uma revisão |
cadeia |
| peso |
Peso do tráfego atribuído a uma revisão |
int |
UserAssignedIdentities
UserAssignedIdentity
Volume
| Nome |
Descrição |
Valor |
| opções de montagem |
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írgula. |
cadeia |
| nome |
Nome do volume. |
cadeia |
| segredos |
Lista de segredos a serem adicionados no volume. Se nenhum segredo for fornecido, todos os segredos da coleção serão adicionados ao volume. |
SecretVolumeItem [] |
| nome do armazenamento |
Nome do recurso de armazenamento. Não é necessário fornecer para EmptyDir e Secret. |
cadeia |
| tipo de armazenamento |
Tipo de armazenamento para o volume. Se não for fornecido, use EmptyDir. |
'AzureFile' 'EmptyDir' 'NfsAzureFile' 'Segredo' |
Montagem de volume
| Nome |
Descrição |
Valor |
| caminho de montagem |
Caminho dentro do contêiner no qual o volume deve ser montado. Não deve conter ':'. |
cadeia |
| subCaminho |
Caminho dentro do volume do qual o volume do contêiner deve ser montado. O padrão é "" (raiz do volume). |
cadeia |
| nome do volume |
Isso deve corresponder ao nome de um volume. |
cadeia |
Exemplos de uso
Um exemplo básico de implantação do Aplicativo de Contêiner.
terraform {
required_providers {
azapi = {
source = "Azure/azapi"
}
}
}
provider "azapi" {
skip_provider_registration = false
}
variable "resource_name" {
type = string
default = "acctest0001"
}
variable "location" {
type = string
default = "westeurope"
}
resource "azapi_resource" "resourceGroup" {
type = "Microsoft.Resources/resourceGroups@2020-06-01"
name = var.resource_name
location = var.location
}
resource "azapi_resource" "workspace" {
type = "Microsoft.OperationalInsights/workspaces@2022-10-01"
parent_id = azapi_resource.resourceGroup.id
name = var.resource_name
location = var.location
body = {
properties = {
features = {
disableLocalAuth = false
enableLogAccessUsingOnlyResourcePermissions = true
}
publicNetworkAccessForIngestion = "Enabled"
publicNetworkAccessForQuery = "Enabled"
retentionInDays = 30
sku = {
name = "PerGB2018"
}
workspaceCapping = {
dailyQuotaGb = -1
}
}
}
schema_validation_enabled = false
response_export_values = ["*"]
}
data "azapi_resource_action" "sharedKeys" {
type = "Microsoft.OperationalInsights/workspaces@2020-08-01"
resource_id = azapi_resource.workspace.id
action = "sharedKeys"
response_export_values = ["*"]
}
resource "azapi_resource" "managedEnvironment" {
type = "Microsoft.App/managedEnvironments@2022-03-01"
parent_id = azapi_resource.resourceGroup.id
name = var.resource_name
location = var.location
body = {
properties = {
appLogsConfiguration = {
destination = "log-analytics"
logAnalyticsConfiguration = {
customerId = azapi_resource.workspace.output.properties.customerId
sharedKey = data.azapi_resource_action.sharedKeys.output.primarySharedKey
}
}
vnetConfiguration = {
}
}
}
schema_validation_enabled = false
response_export_values = ["*"]
}
resource "azapi_resource" "containerApp" {
type = "Microsoft.App/containerApps@2022-03-01"
parent_id = azapi_resource.resourceGroup.id
name = var.resource_name
location = var.location
body = {
properties = {
configuration = {
activeRevisionsMode = "Single"
}
managedEnvironmentId = azapi_resource.managedEnvironment.id
template = {
containers = [
{
env = [
]
image = "jackofallops/azure-containerapps-python-acctest:v0.0.1"
name = "acctest-cont-230630032906865620"
probes = [
]
resources = {
cpu = 0.25
ephemeralStorage = "1Gi"
memory = "0.5Gi"
}
volumeMounts = [
]
},
]
scale = {
maxReplicas = 10
}
volumes = [
]
}
}
}
schema_validation_enabled = false
response_export_values = ["*"]
}
Módulos verificados do Azure
O módulos verificados do Azure a seguir pode ser usado para implantar esse tipo de recurso.