Definição de recurso do Bicep
O tipo de recurso containerApps pode ser implantado com operações direcionadas:
Para obter uma lista de propriedades alteradas em cada versão da API, consulte log de alterações.
Para criar um recurso Microsoft.App/containerApps, adicione o Bicep a seguir ao modelo.
resource symbolicname 'Microsoft.App/containerApps@2022-03-01' = {
name: 'string'
location: 'string'
tags: {
tagName1: 'tagValue1'
tagName2: 'tagValue2'
}
identity: {
type: 'string'
userAssignedIdentities: {
{customized property}: {}
}
}
properties: {
configuration: {
activeRevisionsMode: 'string'
dapr: {
appId: 'string'
appPort: int
appProtocol: 'string'
enabled: bool
}
ingress: {
allowInsecure: bool
customDomains: [
{
bindingType: 'string'
certificateId: 'string'
name: 'string'
}
]
external: bool
targetPort: int
traffic: [
{
label: 'string'
latestRevision: bool
revisionName: 'string'
weight: int
}
]
transport: 'string'
}
registries: [
{
identity: 'string'
passwordSecretRef: 'string'
server: 'string'
username: 'string'
}
]
secrets: [
{
name: 'string'
value: 'string'
}
]
}
managedEnvironmentId: 'string'
template: {
containers: [
{
args: [
'string'
]
command: [
'string'
]
env: [
{
name: 'string'
secretRef: 'string'
value: 'string'
}
]
image: 'string'
name: 'string'
probes: [
{
failureThreshold: int
httpGet: {
host: 'string'
httpHeaders: [
{
name: 'string'
value: 'string'
}
]
path: 'string'
port: int
scheme: 'string'
}
initialDelaySeconds: int
periodSeconds: int
successThreshold: int
tcpSocket: {
host: 'string'
port: int
}
terminationGracePeriodSeconds: int
timeoutSeconds: int
type: 'string'
}
]
resources: {
cpu: json('decimal-as-string')
memory: 'string'
}
volumeMounts: [
{
mountPath: 'string'
volumeName: 'string'
}
]
}
]
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'
}
]
}
volumes: [
{
name: 'string'
storageName: 'string'
storageType: 'string'
}
]
}
}
}
Valores de propriedade
containerApps
Nome |
Descrição |
Valor |
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 |
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 |
properties |
Propriedades específicas do recurso ContainerApp |
ContainerAppProperties |
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
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 |
managedEnvironmentId |
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 |
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 |
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 contêiner |
Segredo[] |
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' |
Habilitado |
Booliano indicando se o carro lateral do Dapr está habilitado |
bool |
Entrada
Nome |
Descrição |
Valor |
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 |
customDomains |
associações de domínio personalizadas para nomes de host dos Aplicativos de Contêiner. |
CustomDomain[] |
external |
Bool indicando se o aplicativo expõe um ponto de extremidade http externo |
bool |
targetPort |
Porta de destino em contêineres para tráfego de entrada |
INT |
traffic |
Pesos de tráfego para revisões do aplicativo |
TrafficWeight[] |
transporte |
Protocolo de transporte de entrada |
'auto' 'http' 'http2' |
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. |
string |
name |
Hostname. |
cadeia de caracteres (obrigatório) |
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 |
name |
Nome do Segredo. |
string |
value |
Valor do Segredo. |
string
Restrições: Valor confidencial. Passe como um parâmetro seguro.
|
Modelo
Nome |
Descrição |
Valor |
containers |
Lista de definições de contêiner para o Aplicativo de Contêiner. |
Contêiner[] |
revisionSuffix |
Sufixo amigável que é acrescentado ao nome de revisão |
string |
scale |
Dimensionamento de propriedades para o Aplicativo de Contêiner. |
Escala |
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 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' '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' |
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 |
volumeName |
Isso deve corresponder ao Nome de um Volume. |
string |
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 |
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 Aplicativo de Contêiner 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 |
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 |
Nome |
Descrição |
Valor |
{propriedade personalizada} |
|
string |
Volume
Nome |
Descrição |
Valor |
name |
Nome do volume. |
string |
storageName |
Nome do recurso de armazenamento. Não há necessidade de fornecer para EmptyDir. |
string |
storageType |
Tipo de armazenamento para o volume. Se não for fornecido, use EmptyDir. |
'AzureFile' 'EmptyDir' |
Modelos de início rápido
Os modelos de início rápido a seguir implantam esse tipo de recurso.
Definição de recurso de modelo do ARM
O tipo de recurso containerApps pode ser implantado com operações direcionadas:
Para obter uma lista de propriedades alteradas em cada versão da API, consulte log de alterações.
Para criar um recurso de Microsoft.App/containerApps, adicione o JSON a seguir ao modelo.
{
"type": "Microsoft.App/containerApps",
"apiVersion": "2022-03-01",
"name": "string",
"location": "string",
"tags": {
"tagName1": "tagValue1",
"tagName2": "tagValue2"
},
"identity": {
"type": "string",
"userAssignedIdentities": {
"{customized property}": {}
}
},
"properties": {
"configuration": {
"activeRevisionsMode": "string",
"dapr": {
"appId": "string",
"appPort": "int",
"appProtocol": "string",
"enabled": "bool"
},
"ingress": {
"allowInsecure": "bool",
"customDomains": [
{
"bindingType": "string",
"certificateId": "string",
"name": "string"
}
],
"external": "bool",
"targetPort": "int",
"traffic": [
{
"label": "string",
"latestRevision": "bool",
"revisionName": "string",
"weight": "int"
}
],
"transport": "string"
},
"registries": [
{
"identity": "string",
"passwordSecretRef": "string",
"server": "string",
"username": "string"
}
],
"secrets": [
{
"name": "string",
"value": "string"
}
]
},
"managedEnvironmentId": "string",
"template": {
"containers": [
{
"args": [ "string" ],
"command": [ "string" ],
"env": [
{
"name": "string",
"secretRef": "string",
"value": "string"
}
],
"image": "string",
"name": "string",
"probes": [
{
"failureThreshold": "int",
"httpGet": {
"host": "string",
"httpHeaders": [
{
"name": "string",
"value": "string"
}
],
"path": "string",
"port": "int",
"scheme": "string"
},
"initialDelaySeconds": "int",
"periodSeconds": "int",
"successThreshold": "int",
"tcpSocket": {
"host": "string",
"port": "int"
},
"terminationGracePeriodSeconds": "int",
"timeoutSeconds": "int",
"type": "string"
}
],
"resources": {
"cpu": "[json('decimal-as-string')]",
"memory": "string"
},
"volumeMounts": [
{
"mountPath": "string",
"volumeName": "string"
}
]
}
],
"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"
}
]
},
"volumes": [
{
"name": "string",
"storageName": "string",
"storageType": "string"
}
]
}
}
}
Valores de propriedade
containerApps
Nome |
Descrição |
Valor |
tipo |
O tipo de recurso |
'Microsoft.App/containerApps' |
apiVersion |
A versão da API de recursos |
'2022-03-01' |
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 |
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 |
properties |
Propriedades específicas do recurso ContainerApp |
ContainerAppProperties |
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
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 |
managedEnvironmentId |
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 |
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 |
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[] |
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' |
Habilitado |
Booliano indicando se o carro lateral do Dapr está habilitado |
bool |
Entrada
Nome |
Descrição |
Valor |
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 |
customDomains |
associações de domínio personalizadas para nomes de host dos Aplicativos de Contêiner. |
CustomDomain[] |
external |
Bool indicando se o aplicativo expõe um ponto de extremidade http externo |
bool |
targetPort |
Porta de destino em contêineres para tráfego de entrada |
INT |
traffic |
Pesos de tráfego para revisões do aplicativo |
TrafficWeight[] |
transporte |
Protocolo de transporte de entrada |
'auto' 'http' 'http2' |
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. |
string |
name |
Hostname. |
cadeia de caracteres (obrigatório) |
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 de recurso de identidade atribuída pelo usuário completa. 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 |
name |
Nome do Segredo. |
string |
value |
Valor do segredo. |
string
Restrições: Valor confidencial. Passe como um parâmetro seguro.
|
Modelo
Nome |
Descrição |
Valor |
containers |
Lista de definições de contêiner para o Aplicativo de Contêiner. |
Contêiner[] |
revisionSuffix |
Sufixo amigável que é acrescentado ao nome da revisão |
string |
scale |
Dimensionamento de propriedades para o Aplicativo de Contêiner. |
Escala |
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 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 |
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 efetuar pull do valor da variável de ambiente. |
string |
value |
Valor da variável de ambiente não secreta. |
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' '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' |
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 |
volumeName |
Isso deve corresponder ao Nome de um Volume. |
string |
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 |
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 Aplicativo de Contêiner 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 |
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 |
Nome |
Descrição |
Valor |
{propriedade personalizada} |
|
string |
Volume
Nome |
Descrição |
Valor |
name |
Nome do volume. |
string |
storageName |
Nome do recurso de armazenamento. Não há necessidade de fornecer para EmptyDir. |
string |
storageType |
Tipo de armazenamento para o volume. Se não for fornecido, use EmptyDir. |
'AzureFile' 'EmptyDir' |
Modelos de início rápido
Os modelos de início rápido a seguir implantam esse tipo de recurso.
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.
Para criar um recurso Microsoft.App/containerApps, adicione o Terraform a seguir ao modelo.
resource "azapi_resource" "symbolicname" {
type = "Microsoft.App/containerApps@2022-03-01"
name = "string"
location = "string"
parent_id = "string"
tags = {
tagName1 = "tagValue1"
tagName2 = "tagValue2"
}
identity {
type = "string"
identity_ids = []
}
body = jsonencode({
properties = {
configuration = {
activeRevisionsMode = "string"
dapr = {
appId = "string"
appPort = int
appProtocol = "string"
enabled = bool
}
ingress = {
allowInsecure = bool
customDomains = [
{
bindingType = "string"
certificateId = "string"
name = "string"
}
]
external = bool
targetPort = int
traffic = [
{
label = "string"
latestRevision = bool
revisionName = "string"
weight = int
}
]
transport = "string"
}
registries = [
{
identity = "string"
passwordSecretRef = "string"
server = "string"
username = "string"
}
]
secrets = [
{
name = "string"
value = "string"
}
]
}
managedEnvironmentId = "string"
template = {
containers = [
{
args = [
"string"
]
command = [
"string"
]
env = [
{
name = "string"
secretRef = "string"
value = "string"
}
]
image = "string"
name = "string"
probes = [
{
failureThreshold = int
httpGet = {
host = "string"
httpHeaders = [
{
name = "string"
value = "string"
}
]
path = "string"
port = int
scheme = "string"
}
initialDelaySeconds = int
periodSeconds = int
successThreshold = int
tcpSocket = {
host = "string"
port = int
}
terminationGracePeriodSeconds = int
timeoutSeconds = int
type = "string"
}
]
resources = {
cpu = "decimal-as-string"
memory = "string"
}
volumeMounts = [
{
mountPath = "string"
volumeName = "string"
}
]
}
]
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"
}
]
}
volumes = [
{
name = "string"
storageName = "string"
storageType = "string"
}
]
}
}
})
}
Valores de propriedade
containerApps
Nome |
Descrição |
Valor |
tipo |
O tipo de recurso |
"Microsoft.App/containerApps@2022-03-01" |
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) |
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. |
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 |
properties |
Propriedades específicas do recurso ContainerApp |
ContainerAppProperties |
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
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 |
managedEnvironmentId |
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 |
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 |
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 contêiner |
Segredo[] |
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" |
Habilitado |
Booliano indicando se o carro lateral do Dapr está habilitado |
bool |
Entrada
Nome |
Descrição |
Valor |
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 |
customDomains |
associações de domínio personalizadas para nomes de host dos Aplicativos de Contêiner. |
CustomDomain[] |
external |
Bool indicando se o aplicativo expõe um ponto de extremidade http externo |
bool |
targetPort |
Porta de destino em contêineres para tráfego de entrada |
INT |
traffic |
Pesos de tráfego para revisões do aplicativo |
TrafficWeight[] |
transporte |
Protocolo de transporte de entrada |
"auto" "http" "http2" |
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. |
string |
name |
Hostname. |
cadeia de caracteres (obrigatório) |
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 de recurso de identidade atribuída pelo usuário completa. 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 |
name |
Nome do Segredo. |
string |
value |
Valor do segredo. |
string
Restrições: Valor confidencial. Passe como um parâmetro seguro.
|
Modelo
Nome |
Descrição |
Valor |
containers |
Lista de definições de contêiner para o Aplicativo de Contêiner. |
Contêiner[] |
revisionSuffix |
Sufixo amigável que é acrescentado ao nome da revisão |
string |
scale |
Dimensionamento de propriedades para o Aplicativo de Contêiner. |
Escala |
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 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 |
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 efetuar pull do valor da variável de ambiente. |
string |
value |
Valor da variável de ambiente não secreta. |
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" |
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 |
volumeName |
Isso deve corresponder ao Nome de um Volume. |
string |
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 |
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 Aplicativo de Contêiner 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 |
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 |
Nome |
Descrição |
Valor |
{propriedade personalizada} |
|
string |
Volume
Nome |
Descrição |
Valor |
name |
Nome do volume. |
string |
storageName |
Nome do recurso de armazenamento. Não há necessidade de fornecer para EmptyDir. |
string |
storageType |
Tipo de armazenamento para o volume. Se não for fornecido, use EmptyDir. |
"AzureFile" "EmptyDir" |