Partilhar via


Microsoft.App containerApps 2022-03-01

Definição de recursos do bíceps

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.

Formato do recurso

Para criar um recurso Microsoft.App/containerApps, adicione o seguinte Bíceps ao seu 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

Designação Descrição Valor
Designação O nome do recurso string (obrigatório)

Limite de caracteres: 2-32

Caracteres válidos:
Letras minúsculas, números e hífenes..

Comece com letra e termine com alfanumérico.
Localização A geolocalização onde o recurso vive string (obrigatório)
Etiquetas Tags de recursos. Dicionário de nomes e valores de tags. Consulte Tags 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
propriedades Propriedades específicas do recurso ContainerApp ContainerAppProperties

ManagedServiceIdentity

Designação Descrição Valor
tipo Tipo de identidade de serviço gerenciado (onde os tipos SystemAssigned e UserAssigned são permitidos). 'Nenhuma'
'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 ARM no formato: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Os valores de dicionário podem ser objetos vazios ({}) em solicitações. UserAssignedIdentities

UserAssignedIdentities

Designação Descrição Valor
{propriedade personalizada} UserAssignedIdentity

UserAssignedIdentity

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

ContainerAppProperties

Designação Descrição Valor
configuração Propriedades de configuração do aplicativo de contêiner sem versão. de configuração
managedEnvironmentId ID do recurso do ambiente do aplicativo de contêiner. string
modelo Definição de aplicativo com versão do aplicativo de contêiner. Modelo

Configuração

Designação Descrição Valor
activeRevisionsMode ActiveRevisionsMode controla como as revisões ativas são tratadas para o aplicativo Container:
{lista} {item} Múltiplas: várias revisões podem estar ativas. {/item} {item} Único: Apenas uma revisão pode estar ativa de cada vez. Os pesos de revisão não podem ser usados neste modo. Se nenhum valor for fornecido, este é o padrão. {/item} {/lista}
'Múltiplo'
'Solteiro'
DAPR Configuração de Dapr para o aplicativo de contêiner. Dapr
Ingresso Configurações de ingresso. Ingress
registos Coleta 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 Container Secreto []

Dapr

Designação Descrição Valor
appId Identificador do aplicativo Dapr string
appPort Informa ao Dapr em qual porta seu aplicativo está escutando Int
appProtocolo 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'
ativado Boolean indicando se o carro lateral Dapr está ativado Bool

Ingresso

Designação Descrição Valor
permitirInsecure Bool indicando se conexões HTTP para é permitido. Se definido como false conexões HTTP são automaticamente redirecionados para conexões HTTPS Bool
customDomains associações de domínio personalizadas para nomes de host de Aplicativos de Contêiner. CustomDomain []
Externa Bool indicando se o aplicativo expõe um ponto de extremidade http externo Bool
Porto-alvo Porta de destino em contêineres para tráfego de entrada Int
Trânsito Pesos de tráfego para revisões de aplicativos TrafficWeight []
Transportes Protocolo de transporte de entrada 'Auto'
'http'
'http2'

CustomDomain

Designação Descrição Valor
bindingType Tipo de vinculação de domínio personalizado. 'Desativado'
'SniEnabled'
certificateId ID do recurso do certificado a ser vinculado a esse nome de host. string
Designação Nome do host. string (obrigatório)

TrafficWeight

Designação Descrição Valor
rótulo Associa um rótulo de tráfego a uma revisão string
mais recenteRevisão Indica que o peso do tráfego pertence a uma última revisão estável Bool
revisionName Nome de uma revisão string
peso Peso de tráfego atribuído a uma revisão Int

RegistryCredentials

Designação 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 o ID de recurso de identidade atribuído pelo usuário completo. Para identidades atribuídas ao sistema, use 'system' string
senhaSecretRef O nome do segredo que contém a senha de login do registro string
servidor Servidor de Registro de Contêiner string
nome de utilizador Nome de usuário do Registro de contêiner string

Segredo

Designação Descrição Valor
Designação Nome secreto. string
valor Valor Secreto. string

Restrições:
Valor sensível. Passe como um parâmetro seguro.

Modelo

Designação Descrição Valor
contentores Lista de definições de contêiner para o aplicativo de contêiner. Contentor[]
revisionSuffix Sufixo amigável que é anexado ao nome da revisão string
Escala Propriedades de dimensionamento para o aplicativo de contêiner. Escala
Volumes Lista de definições de volume para o aplicativo de contêiner. Volume[]

Contentor

Designação Descrição Valor
Args Argumentos do comando Container start. string[]
comando Comando Container start. string[]
env Variáveis de ambiente de contêiner. EnvironmentVar[]
imagem Tag de imagem de contêiner. string
Designação Nome do contêiner personalizado. string
sondas Lista de sondas para o recipiente. ContainerAppProbe []
Recursos Requisitos de recursos de contêiner. ContainerResources
volumeMontagens Montagens de volume de recipiente. VolumeMount[]

AmbienteVar

Designação Descrição Valor
Designação 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
valor Valor da variável de ambiente não secreto. string

ContainerAppProbe

Designação Descrição Valor
failureThreshold Mínimo de falhas consecutivas para que a sonda seja considerada falha após ter sido bem-sucedida. O padrão é 3. O valor mínimo é 1. O valor máximo é 10. Int
httpObter HTTPGet especifica a solicitação http a ser executada. ContainerAppProbeHttpGet
initialDelaySeconds Número de segundos após o início do recipiente antes que as sondas de vivacidade sejam iniciadas. O valor mínimo é 1. O valor máximo é 60. Int
períodoSegundos Com que frequência (em segundos) realizar a sonda. O padrão é de 10 segundos. O valor mínimo é 1. O valor máximo é 240. Int
successThreshold Mínimo de sucessos consecutivos para que a sonda seja considerada bem-sucedida após ter falhado. O padrão é 1. Deve ser 1 para liveness e startup. O valor mínimo é 1. O valor máximo é 10. Int
tcpSocket TCPSocket especifica uma ação envolvendo uma porta TCP. Ganchos TCP ainda não suportados. ContainerAppProbeTcpSocket
terminaçãoGracePeriodSeconds Duração opcional: em segundos, o pod precisa terminar normalmente em caso de falha da sonda. O período de carência é a duração em segundos após os processos em execução no pod receberem um sinal de terminação e o tempo 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 seu processo. Se esse valor for nulo, a terminationGracePeriodSeconds do pod será usada. 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 através do sinal de morte (sem oportunidade de encerrar). Este é um campo alfa e requer a ativação da porta de recurso ProbeTerminationGracePeriod. O valor máximo é de 3600 segundos (1 hora) Int
timeoutSegundos Número de segundos após os quais a sonda atinge o tempo limite. O padrão é de 1 segundo. O valor mínimo é 1. O valor máximo é 240. Int
tipo O tipo de sonda. 'Vivacidade'
'Prontidão'
'Startup'

ContainerAppProbeHttpGet

Designação Descrição Valor
anfitrião Nome do host ao qual se conectar, o padrão é o IP do pod. Você provavelmente deseja definir "Host" em httpHeaders em vez disso. string
Cabeçalhos http Cabeçalhos personalizados para definir na solicitação. HTTP permite cabeçalhos repetidos. ContainerAppProbeHttpGetHttpHeadersItem []
caminho Caminho de acesso no servidor HTTP. string
porto 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)
Regime Esquema a ser usado para se conectar ao host. O padrão é HTTP. 'HTTP'
'HTTPS'

ContainerAppProbeHttpGetHttpHeadersItem

Designação Descrição Valor
Designação O nome do campo de cabeçalho string (obrigatório)
valor O valor do campo de cabeçalho string (obrigatório)

ContainerAppProbeTcpSocket

Designação Descrição Valor
anfitrião Opcional: Nome do host ao qual se conectar, o padrão é o IP do pod. string
porto 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

Designação 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, "250Mb" string

Montagem em volume

Designação Descrição Valor
mountPath [en] Caminho dentro do recipiente no qual o volume deve ser montado. Não deve conter «:». string
nome_do_volume Isso deve corresponder ao Nome de um Volume. string

Escala

Designação Descrição Valor
maxRéplicas Opcional. Número máximo de réplicas de contêiner. O padrão é 10 se não estiver definido. Int
minRéplicas Opcional. Número mínimo de réplicas de contêiner. Int
regras Regras de dimensionamento. ScaleRule []

Regra de Escala

Designação Descrição Valor
azureQueue Escalonamento baseado em fila do Azure. QueueScaleRule
Personalizado Regra de escala personalizada. CustomScaleRule
Disponível em: Dimensionamento baseado em solicitações HTTP. HttpScaleRule
Designação Nome da regra de escala string

QueueScaleRule

Designação 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

Designação Descrição Valor
secretRef Nome do segredo do aplicativo de contêiner do qual extrair os parâmetros de autenticação. string
triggerParâmetro Parâmetro Trigger que usa o segredo string

CustomScaleRule

Designação Descrição Valor
auth Segredos de autenticação para a regra de escala personalizada. ScaleRuleAuth[]
metadados Propriedades de metadados para descrever a regra de escala personalizada. CustomScaleRuleMetadata
tipo Tipo de regra de escala personalizada
Por exemplo: Azure-ServiceBus, Redis etc.
string

CustomScaleRuleMetadata

Designação Descrição Valor
{propriedade personalizada} string

HttpScaleRule

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

HttpScaleRuleMetadata

Designação Descrição Valor
{propriedade personalizada} string

Volume

Designação Descrição Valor
Designação Nome do volume. string
nome_do_armazenamento Nome do recurso de armazenamento. Não há necessidade de fornecer para EmptyDir. string
tipo de armazenamento 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.

Modelo Descrição
cria um aplicativo de contêiner e um ambiente com de registro

Implantar no Azure
Crie um Ambiente de Aplicativo de Contêiner com um Aplicativo de Contêiner básico a partir de um Registro de Contêiner do Azure. Ele também implanta um espaço de trabalho do Log Analytics para armazenar logs.
Cria um aplicativo de dois contêineres com um ambiente de aplicativo de contêiner

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

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

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

Implantar no Azure
Cria um ambiente de aplicativo de contêiner externo com uma VNET.
Cria um ambiente interno de aplicativo de contêiner com uma VNET

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

Definição de recurso de modelo 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.

Formato do recurso

Para criar um recurso Microsoft.App/containerApps, adicione o JSON a seguir ao seu 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

Designação Descrição Valor
tipo O tipo de recurso 'Microsoft.App/containerApps'
apiVersion A versão da api de recursos '2022-03-01'
Designação O nome do recurso string (obrigatório)

Limite de caracteres: 2-32

Caracteres válidos:
Letras minúsculas, números e hífenes..

Comece com letra e termine com alfanumérico.
Localização A geolocalização onde o recurso vive string (obrigatório)
Etiquetas Tags de recursos. Dicionário de nomes e valores de tags. Consulte Tags 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
propriedades Propriedades específicas do recurso ContainerApp ContainerAppProperties

ManagedServiceIdentity

Designação Descrição Valor
tipo Tipo de identidade de serviço gerenciado (onde os tipos SystemAssigned e UserAssigned são permitidos). 'Nenhuma'
'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 ARM no formato: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Os valores de dicionário podem ser objetos vazios ({}) em solicitações. UserAssignedIdentities

UserAssignedIdentities

Designação Descrição Valor
{propriedade personalizada} UserAssignedIdentity

UserAssignedIdentity

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

ContainerAppProperties

Designação Descrição Valor
configuração Propriedades de configuração do aplicativo de contêiner sem versão. de configuração
managedEnvironmentId ID do recurso do ambiente do aplicativo de contêiner. string
modelo Definição de aplicativo com versão do aplicativo de contêiner. Modelo

Configuração

Designação Descrição Valor
activeRevisionsMode ActiveRevisionsMode controla como as revisões ativas são tratadas para o aplicativo Container:
{lista} {item} Múltiplas: várias revisões podem estar ativas. {/item} {item} Único: Apenas uma revisão pode estar ativa de cada vez. Os pesos de revisão não podem ser usados neste modo. Se nenhum valor for fornecido, este é o padrão. {/item} {/lista}
'Múltiplo'
'Solteiro'
DAPR Configuração de Dapr para o aplicativo de contêiner. Dapr
Ingresso Configurações de ingresso. Ingress
registos Coleta 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 Container Secreto []

Dapr

Designação Descrição Valor
appId Identificador do aplicativo Dapr string
appPort Informa ao Dapr em qual porta seu aplicativo está escutando Int
appProtocolo 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'
ativado Boolean indicando se o carro lateral Dapr está ativado Bool

Ingresso

Designação Descrição Valor
permitirInsecure Bool indicando se conexões HTTP para é permitido. Se definido como false conexões HTTP são automaticamente redirecionados para conexões HTTPS Bool
customDomains associações de domínio personalizadas para nomes de host de Aplicativos de Contêiner. CustomDomain []
Externa Bool indicando se o aplicativo expõe um ponto de extremidade http externo Bool
Porto-alvo Porta de destino em contêineres para tráfego de entrada Int
Trânsito Pesos de tráfego para revisões de aplicativos TrafficWeight []
Transportes Protocolo de transporte de entrada 'Auto'
'http'
'http2'

CustomDomain

Designação Descrição Valor
bindingType Tipo de vinculação de domínio personalizado. 'Desativado'
'SniEnabled'
certificateId ID do recurso do certificado a ser vinculado a esse nome de host. string
Designação Nome do host. string (obrigatório)

TrafficWeight

Designação Descrição Valor
rótulo Associa um rótulo de tráfego a uma revisão string
mais recenteRevisão Indica que o peso do tráfego pertence a uma última revisão estável Bool
revisionName Nome de uma revisão string
peso Peso de tráfego atribuído a uma revisão Int

RegistryCredentials

Designação 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 o ID de recurso de identidade atribuído pelo usuário completo. Para identidades atribuídas ao sistema, use 'system' string
senhaSecretRef O nome do segredo que contém a senha de login do registro string
servidor Servidor de Registro de Contêiner string
nome de utilizador Nome de usuário do Registro de contêiner string

Segredo

Designação Descrição Valor
Designação Nome secreto. string
valor Valor Secreto. string

Restrições:
Valor sensível. Passe como um parâmetro seguro.

Modelo

Designação Descrição Valor
contentores Lista de definições de contêiner para o aplicativo de contêiner. Contentor[]
revisionSuffix Sufixo amigável que é anexado ao nome da revisão string
Escala Propriedades de dimensionamento para o aplicativo de contêiner. Escala
Volumes Lista de definições de volume para o aplicativo de contêiner. Volume[]

Contentor

Designação Descrição Valor
Args Argumentos do comando Container start. string[]
comando Comando Container start. string[]
env Variáveis de ambiente de contêiner. EnvironmentVar[]
imagem Tag de imagem de contêiner. string
Designação Nome do contêiner personalizado. string
sondas Lista de sondas para o recipiente. ContainerAppProbe []
Recursos Requisitos de recursos de contêiner. ContainerResources
volumeMontagens Montagens de volume de recipiente. VolumeMount[]

AmbienteVar

Designação Descrição Valor
Designação 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
valor Valor da variável de ambiente não secreto. string

ContainerAppProbe

Designação Descrição Valor
failureThreshold Mínimo de falhas consecutivas para que a sonda seja considerada falha após ter sido bem-sucedida. O padrão é 3. O valor mínimo é 1. O valor máximo é 10. Int
httpObter HTTPGet especifica a solicitação http a ser executada. ContainerAppProbeHttpGet
initialDelaySeconds Número de segundos após o início do recipiente antes que as sondas de vivacidade sejam iniciadas. O valor mínimo é 1. O valor máximo é 60. Int
períodoSegundos Com que frequência (em segundos) realizar a sonda. O padrão é de 10 segundos. O valor mínimo é 1. O valor máximo é 240. Int
successThreshold Mínimo de sucessos consecutivos para que a sonda seja considerada bem-sucedida após ter falhado. O padrão é 1. Deve ser 1 para liveness e startup. O valor mínimo é 1. O valor máximo é 10. Int
tcpSocket TCPSocket especifica uma ação envolvendo uma porta TCP. Ganchos TCP ainda não suportados. ContainerAppProbeTcpSocket
terminaçãoGracePeriodSeconds Duração opcional: em segundos, o pod precisa terminar normalmente em caso de falha da sonda. O período de carência é a duração em segundos após os processos em execução no pod receberem um sinal de terminação e o tempo 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 seu processo. Se esse valor for nulo, a terminationGracePeriodSeconds do pod será usada. 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 através do sinal de morte (sem oportunidade de encerrar). Este é um campo alfa e requer a ativação da porta de recurso ProbeTerminationGracePeriod. O valor máximo é de 3600 segundos (1 hora) Int
timeoutSegundos Número de segundos após os quais a sonda atinge o tempo limite. O padrão é de 1 segundo. O valor mínimo é 1. O valor máximo é 240. Int
tipo O tipo de sonda. 'Vivacidade'
'Prontidão'
'Startup'

ContainerAppProbeHttpGet

Designação Descrição Valor
anfitrião Nome do host ao qual se conectar, o padrão é o IP do pod. Você provavelmente deseja definir "Host" em httpHeaders em vez disso. string
Cabeçalhos http Cabeçalhos personalizados para definir na solicitação. HTTP permite cabeçalhos repetidos. ContainerAppProbeHttpGetHttpHeadersItem []
caminho Caminho de acesso no servidor HTTP. string
porto 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)
Regime Esquema a ser usado para se conectar ao host. O padrão é HTTP. 'HTTP'
'HTTPS'

ContainerAppProbeHttpGetHttpHeadersItem

Designação Descrição Valor
Designação O nome do campo de cabeçalho string (obrigatório)
valor O valor do campo de cabeçalho string (obrigatório)

ContainerAppProbeTcpSocket

Designação Descrição Valor
anfitrião Opcional: Nome do host ao qual se conectar, o padrão é o IP do pod. string
porto 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

Designação 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, "250Mb" string

Montagem em volume

Designação Descrição Valor
mountPath [en] Caminho dentro do recipiente no qual o volume deve ser montado. Não deve conter «:». string
nome_do_volume Isso deve corresponder ao Nome de um Volume. string

Escala

Designação Descrição Valor
maxRéplicas Opcional. Número máximo de réplicas de contêiner. O padrão é 10 se não estiver definido. Int
minRéplicas Opcional. Número mínimo de réplicas de contêiner. Int
regras Regras de dimensionamento. ScaleRule []

Regra de Escala

Designação Descrição Valor
azureQueue Escalonamento baseado em fila do Azure. QueueScaleRule
Personalizado Regra de escala personalizada. CustomScaleRule
Disponível em: Dimensionamento baseado em solicitações HTTP. HttpScaleRule
Designação Nome da regra de escala string

QueueScaleRule

Designação 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

Designação Descrição Valor
secretRef Nome do segredo do aplicativo de contêiner do qual extrair os parâmetros de autenticação. string
triggerParâmetro Parâmetro Trigger que usa o segredo string

CustomScaleRule

Designação Descrição Valor
auth Segredos de autenticação para a regra de escala personalizada. ScaleRuleAuth[]
metadados Propriedades de metadados para descrever a regra de escala personalizada. CustomScaleRuleMetadata
tipo Tipo de regra de escala personalizada
Por exemplo: Azure-ServiceBus, Redis etc.
string

CustomScaleRuleMetadata

Designação Descrição Valor
{propriedade personalizada} string

HttpScaleRule

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

HttpScaleRuleMetadata

Designação Descrição Valor
{propriedade personalizada} string

Volume

Designação Descrição Valor
Designação Nome do volume. string
nome_do_armazenamento Nome do recurso de armazenamento. Não há necessidade de fornecer para EmptyDir. string
tipo de armazenamento 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.

Modelo Descrição
cria um aplicativo de contêiner e um ambiente com de registro

Implantar no Azure
Crie um Ambiente de Aplicativo de Contêiner com um Aplicativo de Contêiner básico a partir de um Registro de Contêiner do Azure. Ele também implanta um espaço de trabalho do Log Analytics para armazenar logs.
Cria um aplicativo de dois contêineres com um ambiente de aplicativo de contêiner

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

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

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

Implantar no Azure
Cria um ambiente de aplicativo de contêiner externo com uma VNET.
Cria um ambiente interno de aplicativo de contêiner com uma VNET

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

Definição de recursos Terraform (provedor AzAPI)

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

  • Grupos de recursos

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

Formato do recurso

Para criar um recurso Microsoft.App/containerApps, adicione o seguinte Terraform ao seu 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

Designação Descrição Valor
tipo O tipo de recurso "Microsoft.App/containerApps@2022-03-01"
Designação O nome do recurso string (obrigatório)

Limite de caracteres: 2-32

Caracteres válidos:
Letras minúsculas, números e hífenes..

Comece com letra e termine com alfanumérico.
Localização A geolocalização onde o recurso vive string (obrigatório)
parent_id Para implantar em um grupo de recursos, use a ID desse grupo de recursos. string (obrigatório)
Etiquetas Tags de recursos. Dicionário de nomes e valores de tags.
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
propriedades Propriedades específicas do recurso ContainerApp ContainerAppProperties

ManagedServiceIdentity

Designação Descrição Valor
tipo Tipo de identidade de serviço gerenciado (onde 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 ARM no formato: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Os valores de dicionário podem ser objetos vazios ({}) em solicitações. Matriz de IDs de identidade do usuário.

UserAssignedIdentities

Designação Descrição Valor
{propriedade personalizada} UserAssignedIdentity

UserAssignedIdentity

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

ContainerAppProperties

Designação Descrição Valor
configuração Propriedades de configuração do aplicativo de contêiner sem versão. de configuração
managedEnvironmentId ID do recurso do ambiente do aplicativo de contêiner. string
modelo Definição de aplicativo com versão do aplicativo de contêiner. Modelo

Configuração

Designação Descrição Valor
activeRevisionsMode ActiveRevisionsMode controla como as revisões ativas são tratadas para o aplicativo Container:
{lista} {item} Múltiplas: várias revisões podem estar ativas. {/item} {item} Único: Apenas uma revisão pode estar ativa de cada vez. Os pesos de revisão não podem ser usados neste modo. Se nenhum valor for fornecido, este é o padrão. {/item} {/lista}
"Múltiplos"
"Solteiro"
DAPR Configuração de Dapr para o aplicativo de contêiner. Dapr
Ingresso Configurações de ingresso. Ingress
registos Coleta 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 Container Secreto []

Dapr

Designação Descrição Valor
appId Identificador do aplicativo Dapr string
appPort Informa ao Dapr em qual porta seu aplicativo está escutando Int
appProtocolo 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"
ativado Boolean indicando se o carro lateral Dapr está ativado Bool

Ingresso

Designação Descrição Valor
permitirInsecure Bool indicando se conexões HTTP para é permitido. Se definido como false conexões HTTP são automaticamente redirecionados para conexões HTTPS Bool
customDomains associações de domínio personalizadas para nomes de host de Aplicativos de Contêiner. CustomDomain []
Externa Bool indicando se o aplicativo expõe um ponto de extremidade http externo Bool
Porto-alvo Porta de destino em contêineres para tráfego de entrada Int
Trânsito Pesos de tráfego para revisões de aplicativos TrafficWeight []
Transportes Protocolo de transporte de entrada "Auto"
"http"
"http2"

CustomDomain

Designação Descrição Valor
bindingType Tipo de vinculação de domínio personalizado. "Desativado"
"SniEnabled"
certificateId ID do recurso do certificado a ser vinculado a esse nome de host. string
Designação Nome do host. string (obrigatório)

TrafficWeight

Designação Descrição Valor
rótulo Associa um rótulo de tráfego a uma revisão string
mais recenteRevisão Indica que o peso do tráfego pertence a uma última revisão estável Bool
revisionName Nome de uma revisão string
peso Peso de tráfego atribuído a uma revisão Int

RegistryCredentials

Designação 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 o ID de recurso de identidade atribuído pelo usuário completo. Para identidades atribuídas ao sistema, use 'system' string
senhaSecretRef O nome do segredo que contém a senha de login do registro string
servidor Servidor de Registro de Contêiner string
nome de utilizador Nome de usuário do Registro de contêiner string

Segredo

Designação Descrição Valor
Designação Nome secreto. string
valor Valor Secreto. string

Restrições:
Valor sensível. Passe como um parâmetro seguro.

Modelo

Designação Descrição Valor
contentores Lista de definições de contêiner para o aplicativo de contêiner. Contentor[]
revisionSuffix Sufixo amigável que é anexado ao nome da revisão string
Escala Propriedades de dimensionamento para o aplicativo de contêiner. Escala
Volumes Lista de definições de volume para o aplicativo de contêiner. Volume[]

Contentor

Designação Descrição Valor
Args Argumentos do comando Container start. string[]
comando Comando Container start. string[]
env Variáveis de ambiente de contêiner. EnvironmentVar[]
imagem Tag de imagem de contêiner. string
Designação Nome do contêiner personalizado. string
sondas Lista de sondas para o recipiente. ContainerAppProbe []
Recursos Requisitos de recursos de contêiner. ContainerResources
volumeMontagens Montagens de volume de recipiente. VolumeMount[]

AmbienteVar

Designação Descrição Valor
Designação 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
valor Valor da variável de ambiente não secreto. string

ContainerAppProbe

Designação Descrição Valor
failureThreshold Mínimo de falhas consecutivas para que a sonda seja considerada falha após ter sido bem-sucedida. O padrão é 3. O valor mínimo é 1. O valor máximo é 10. Int
httpObter HTTPGet especifica a solicitação http a ser executada. ContainerAppProbeHttpGet
initialDelaySeconds Número de segundos após o início do recipiente antes que as sondas de vivacidade sejam iniciadas. O valor mínimo é 1. O valor máximo é 60. Int
períodoSegundos Com que frequência (em segundos) realizar a sonda. O padrão é de 10 segundos. O valor mínimo é 1. O valor máximo é 240. Int
successThreshold Mínimo de sucessos consecutivos para que a sonda seja considerada bem-sucedida após ter falhado. O padrão é 1. Deve ser 1 para liveness e startup. O valor mínimo é 1. O valor máximo é 10. Int
tcpSocket TCPSocket especifica uma ação envolvendo uma porta TCP. Ganchos TCP ainda não suportados. ContainerAppProbeTcpSocket
terminaçãoGracePeriodSeconds Duração opcional: em segundos, o pod precisa terminar normalmente em caso de falha da sonda. O período de carência é a duração em segundos após os processos em execução no pod receberem um sinal de terminação e o tempo 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 seu processo. Se esse valor for nulo, a terminationGracePeriodSeconds do pod será usada. 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 através do sinal de morte (sem oportunidade de encerrar). Este é um campo alfa e requer a ativação da porta de recurso ProbeTerminationGracePeriod. O valor máximo é de 3600 segundos (1 hora) Int
timeoutSegundos Número de segundos após os quais a sonda atinge o tempo limite. O padrão é de 1 segundo. O valor mínimo é 1. O valor máximo é 240. Int
tipo O tipo de sonda. "Vivacidade"
"Prontidão"
"Startup"

ContainerAppProbeHttpGet

Designação Descrição Valor
anfitrião Nome do host ao qual se conectar, o padrão é o IP do pod. Você provavelmente deseja definir "Host" em httpHeaders em vez disso. string
Cabeçalhos http Cabeçalhos personalizados para definir na solicitação. HTTP permite cabeçalhos repetidos. ContainerAppProbeHttpGetHttpHeadersItem []
caminho Caminho de acesso no servidor HTTP. string
porto 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)
Regime Esquema a ser usado para se conectar ao host. O padrão é HTTP. "HTTP"
"HTTPS"

ContainerAppProbeHttpGetHttpHeadersItem

Designação Descrição Valor
Designação O nome do campo de cabeçalho string (obrigatório)
valor O valor do campo de cabeçalho string (obrigatório)

ContainerAppProbeTcpSocket

Designação Descrição Valor
anfitrião Opcional: Nome do host ao qual se conectar, o padrão é o IP do pod. string
porto 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

Designação 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, "250Mb" string

Montagem em volume

Designação Descrição Valor
mountPath [en] Caminho dentro do recipiente no qual o volume deve ser montado. Não deve conter «:». string
nome_do_volume Isso deve corresponder ao Nome de um Volume. string

Escala

Designação Descrição Valor
maxRéplicas Opcional. Número máximo de réplicas de contêiner. O padrão é 10 se não estiver definido. Int
minRéplicas Opcional. Número mínimo de réplicas de contêiner. Int
regras Regras de dimensionamento. ScaleRule []

Regra de Escala

Designação Descrição Valor
azureQueue Escalonamento baseado em fila do Azure. QueueScaleRule
Personalizado Regra de escala personalizada. CustomScaleRule
Disponível em: Dimensionamento baseado em solicitações HTTP. HttpScaleRule
Designação Nome da regra de escala string

QueueScaleRule

Designação 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

Designação Descrição Valor
secretRef Nome do segredo do aplicativo de contêiner do qual extrair os parâmetros de autenticação. string
triggerParâmetro Parâmetro Trigger que usa o segredo string

CustomScaleRule

Designação Descrição Valor
auth Segredos de autenticação para a regra de escala personalizada. ScaleRuleAuth[]
metadados Propriedades de metadados para descrever a regra de escala personalizada. CustomScaleRuleMetadata
tipo Tipo de regra de escala personalizada
Por exemplo: Azure-ServiceBus, Redis etc.
string

CustomScaleRuleMetadata

Designação Descrição Valor
{propriedade personalizada} string

HttpScaleRule

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

HttpScaleRuleMetadata

Designação Descrição Valor
{propriedade personalizada} string

Volume

Designação Descrição Valor
Designação Nome do volume. string
nome_do_armazenamento Nome do recurso de armazenamento. Não há necessidade de fornecer para EmptyDir. string
tipo de armazenamento Tipo de armazenamento para o volume. Se não for fornecido, use EmptyDir. "AzureFile"
"EmptyDir"