Condividi tramite


contenitore Microsoft.App App

Definizione di risorsa Bicep

Il tipo di risorsa containerApps può essere distribuito con operazioni destinate a:

Per un elenco delle proprietà modificate in ogni versione dell'API, vedere Log delle modifiche.

Formato di risorsa

Per creare una risorsa Microsoft.App/containerApps, aggiungere il bicep seguente al modello.

resource symbolicname 'Microsoft.App/containerApps@2023-11-02-preview' = {
  name: 'string'
  location: 'string'
  tags: {
    tagName1: 'tagValue1'
    tagName2: 'tagValue2'
  }
  extendedLocation: {
    name: 'string'
    type: 'CustomLocation'
  }
  identity: {
    type: 'string'
    userAssignedIdentities: {
      {customized property}: {}
    }
  }
  managedBy: 'string'
  properties: {
    configuration: {
      activeRevisionsMode: 'string'
      dapr: {
        appId: 'string'
        appPort: int
        appProtocol: 'string'
        enableApiLogging: bool
        enabled: bool
        httpMaxRequestSize: int
        httpReadBufferSize: int
        logLevel: 'string'
      }
      ingress: {
        additionalPortMappings: [
          {
            exposedPort: int
            external: bool
            targetPort: int
          }
        ]
        allowInsecure: bool
        clientCertificateMode: 'string'
        corsPolicy: {
          allowCredentials: bool
          allowedHeaders: [
            'string'
          ]
          allowedMethods: [
            'string'
          ]
          allowedOrigins: [
            'string'
          ]
          exposeHeaders: [
            'string'
          ]
          maxAge: int
        }
        customDomains: [
          {
            bindingType: 'string'
            certificateId: 'string'
            name: 'string'
          }
        ]
        exposedPort: int
        external: bool
        ipSecurityRestrictions: [
          {
            action: 'string'
            description: 'string'
            ipAddressRange: 'string'
            name: 'string'
          }
        ]
        stickySessions: {
          affinity: 'string'
        }
        targetPort: int
        targetPortHttpScheme: 'string'
        traffic: [
          {
            label: 'string'
            latestRevision: bool
            revisionName: 'string'
            weight: int
          }
        ]
        transport: 'string'
      }
      maxInactiveRevisions: int
      registries: [
        {
          identity: 'string'
          passwordSecretRef: 'string'
          server: 'string'
          username: 'string'
        }
      ]
      secrets: [
        {
          identity: 'string'
          keyVaultUrl: 'string'
          name: 'string'
          value: 'string'
        }
      ]
      service: {
        type: 'string'
      }
    }
    environmentId: 'string'
    managedEnvironmentId: 'string'
    template: {
      containers: [
        {
          args: [
            'string'
          ]
          command: [
            'string'
          ]
          env: [
            {
              name: 'string'
              secretRef: 'string'
              value: 'string'
            }
          ]
          image: 'string'
          name: 'string'
          probes: [
            {
              failureThreshold: int
              httpGet: {
                host: 'string'
                httpHeaders: [
                  {
                    name: 'string'
                    value: 'string'
                  }
                ]
                path: 'string'
                port: int
                scheme: 'string'
              }
              initialDelaySeconds: int
              periodSeconds: int
              successThreshold: int
              tcpSocket: {
                host: 'string'
                port: int
              }
              terminationGracePeriodSeconds: int
              timeoutSeconds: int
              type: 'string'
            }
          ]
          resources: {
            cpu: json('decimal-as-string')
            memory: 'string'
          }
          volumeMounts: [
            {
              mountPath: 'string'
              subPath: 'string'
              volumeName: 'string'
            }
          ]
        }
      ]
      initContainers: [
        {
          args: [
            'string'
          ]
          command: [
            'string'
          ]
          env: [
            {
              name: 'string'
              secretRef: 'string'
              value: 'string'
            }
          ]
          image: 'string'
          name: 'string'
          resources: {
            cpu: json('decimal-as-string')
            memory: 'string'
          }
          volumeMounts: [
            {
              mountPath: 'string'
              subPath: 'string'
              volumeName: 'string'
            }
          ]
        }
      ]
      revisionSuffix: 'string'
      scale: {
        maxReplicas: int
        minReplicas: int
        rules: [
          {
            azureQueue: {
              auth: [
                {
                  secretRef: 'string'
                  triggerParameter: 'string'
                }
              ]
              queueLength: int
              queueName: 'string'
            }
            custom: {
              auth: [
                {
                  secretRef: 'string'
                  triggerParameter: 'string'
                }
              ]
              metadata: {
                {customized property}: 'string'
              }
              type: 'string'
            }
            http: {
              auth: [
                {
                  secretRef: 'string'
                  triggerParameter: 'string'
                }
              ]
              metadata: {
                {customized property}: 'string'
              }
            }
            name: 'string'
            tcp: {
              auth: [
                {
                  secretRef: 'string'
                  triggerParameter: 'string'
                }
              ]
              metadata: {
                {customized property}: 'string'
              }
            }
          }
        ]
      }
      serviceBinds: [
        {
          clientType: 'string'
          customizedKeys: {
            {customized property}: 'string'
          }
          name: 'string'
          serviceId: 'string'
        }
      ]
      terminationGracePeriodSeconds: int
      volumes: [
        {
          mountOptions: 'string'
          name: 'string'
          secrets: [
            {
              path: 'string'
              secretRef: 'string'
            }
          ]
          storageName: 'string'
          storageType: 'string'
        }
      ]
    }
    workloadProfileName: 'string'
  }
}

Valori delle proprietà

containerApps

Nome Descrizione valore
name Nome della risorsa stringa (obbligatorio)

Limite di caratteri: 2-32

Caratteri validi:
Lettere minuscole, numeri e trattini.

Inizia con la lettera e termina con alfanumerico.
posizione Posizione geografica in cui risiede la risorsa stringa (obbligatorio)
tags Tag delle risorse. Dizionario di nomi e valori di tag. Vedere Tag nei modelli
extendedLocation Tipo complesso della posizione estesa. ExtendedLocation
identity identità gestite per l'app contenitore per interagire con altri servizi di Azure senza mantenere segreti o credenziali nel codice. ManagedServiceIdentity
managedBy ID risorsa completo della risorsa che gestisce questa risorsa. Indica se questa risorsa è gestita da un'altra risorsa di Azure. Se è presente, la distribuzione in modalità completa non eliminerà la risorsa se viene rimossa dal modello perché è gestita da un'altra risorsa. string
properties Proprietà specifiche della risorsa ContainerApp ContainerAppProperties

ExtendedLocation

Nome Descrizione valore
name Nome della posizione estesa. string
type Tipo della posizione estesa. 'CustomLocation'

ManagedServiceIdentity

Nome Descrizione Valore
tipo Tipo di identità del servizio gestito (in cui sono consentiti i tipi SystemAssigned e UserAssigned). 'Nessuno'
'SystemAssigned'
'SystemAssigned,UserAssigned'
'UserAssigned' (obbligatorio)
userAssignedIdentities Set di identità assegnate dall'utente associate alla risorsa. Le chiavi del dizionario userAssignedIdentities saranno ID risorsa ARM nel formato : '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. I valori del dizionario possono essere oggetti vuoti ({}) nelle richieste. UserAssignedIdentities

UserAssignedIdentities

Nome Descrizione Valore
{proprietà personalizzata} UserAssignedIdentity

UserAssignedIdentity

Questo oggetto non contiene proprietà da impostare durante la distribuzione. Tutte le proprietà sono ReadOnly.

ContainerAppProperties

Nome Descrizione Valore
configurazione Proprietà di configurazione dell'app contenitore non con controllo delle versioni. Configuration
environmentId ID risorsa dell'ambiente. string
managedEnvironmentId Deprecato. ID risorsa dell'ambiente dell'app contenitore. string
template Definizione dell'applicazione con controllo delle versioni dell'app contenitore. Modello
workloadProfileName Nome del profilo del carico di lavoro da aggiungere per l'esecuzione dell'app contenitore. string

Configurazione

Nome Descrizione Valore
activeRevisionsMode ActiveRevisionsMode controlla la modalità di gestione delle revisioni attive per l'app Contenitore:
{list} {item} Multiplo: possono essere attive più revisioni. {/item} {item} Single: una sola revisione può essere attiva alla volta. I pesi delle revisioni non possono essere usati in questa modalità. Se non viene specificato alcun valore, si tratta dell'impostazione predefinita. {/item} {/list}
'Multiple'
'Single'
dapr Configurazione dapr per l'app contenitore. Dapr
Ingresso Configurazioni in ingresso. Dati in ingresso
maxInactiveRevisions facoltativo. Le revisioni inattive massime che un'app contenitore può avere. INT
registries Raccolta di credenziali del registro contenitori privato per i contenitori usati dall'app Contenitore RegistryCredentials[]
chiavi private Raccolta di segreti usati da un'app Contenitore Segreto[]
service App contenitore come contenitore di sviluppo servizio app Servizio

Dapr

Nome Descrizione valore
appId Identificatore dell'applicazione Dapr string
appPort Indica a Dapr la porta su cui l'applicazione è in ascolto INT
appProtocol Indica a Dapr quale protocollo sta usando l'applicazione. Le opzioni valide sono http e grpc. Il valore predefinito è http 'grpc'
'http'
enableApiLogging Abilita la registrazione API per il sidecar Dapr bool
Enabled Valore booleano che indica se l'auto laterale Dapr è abilitata bool
httpMaxRequestSize Aumento della dimensione massima del corpo della richiesta del parametro dei server http e grpc in MB per gestire il caricamento di file di grandi dimensioni. Il valore predefinito è 4 MB. INT
httpReadBufferSize Dapr max size of http header read buffer in KB to handle when sending multi-KB headers .Dapr max size of http header read buffer in KB to handle when sending multi-KB header headers. Il valore predefinito è 65 KB. INT
logLevel Imposta il livello di log per l'sidecar Dapr. I valori consentiti sono debug, info, avviso, errore. Il valore predefinito è info. 'debug'
'error'
'info'
'warn'

Dati in ingresso

Nome Descrizione Valore
additionalPortMappings Impostazioni per esporre porte aggiuntive nell'app contenitore IngressPortMapping[]
allowInsecure Bool che indica se sono consentite connessioni HTTP a. Se impostato su false connessioni HTTP vengono reindirizzate automaticamente alle connessioni HTTPS bool
clientCertificateMode Modalità certificato client per l'autenticazione mTLS. Ignora indica che il certificato client viene eliminato dal server durante l'inoltro. Accept indica che il server inoltra il certificato client ma non richiede un certificato client. Richiedi indica che il server richiede un certificato client. 'accept'
'ignore'
'require'
corsPolicy Criteri CORS per l'app contenitore CorsPolicy
customDomains associazioni di dominio personalizzate per i nomi host di App contenitore. CustomDomain[]
exposedPort Porta esposta nei contenitori per il traffico TCP da ingresso INT
external Bool che indica se l'app espone un endpoint http esterno bool
ipSecurityRestrictions Regole per limitare l'indirizzo IP in ingresso. IpSecurityRestrictionRule[]
stickySessions Sessioni sticky per la modalità di revisione singola IngressStickySessions
targetPort Porta di destinazione nei contenitori per il traffico da ingresso INT
targetPortHttpScheme Se un'app http è in ascolto su http o https 'http'
'https'
Traffico Peso del traffico per le revisioni dell'app TrafficWeight[]
transport Protocollo di trasporto in ingresso 'auto'
'http'
'http2'
'tcp'

IngressPortMapping

Nome Descrizione Valore
exposedPort Specifica la porta esposta per la porta di destinazione. Se non specificato, il valore predefinito è la porta di destinazione INT
external Specifica se la porta dell'app è accessibile all'esterno dell'ambiente bool (obbligatorio)
targetPort Specifica il contenitore dell'utente della porta in ascolto int (obbligatorio)

CorsPolicy

Nome Descrizione Valore
allowCredentials Specifica se la risorsa consente le credenziali bool
allowedHeaders Specifica il contenuto per l'intestazione access-control-allow-headers string[]
allowedMethods Specifica il contenuto per l'intestazione access-control-allow-methods string[]
allowedOrigins Specifica il contenuto per l'intestazione access-control-allow-origins string[] (obbligatorio)
esponiheader Specifica il contenuto per l'intestazione access-control-expose-headers string[]
Maxage Specifica il contenuto per l'intestazione access-control-max-age INT

CustomDomain

Nome Descrizione Valore
bindingType Custom Domain tipo di associazione. 'Disabilitato'
'SniEnabled'
CertificateId ID risorsa del certificato da associare a questo nome host. Deve esistere nell'ambiente gestito. string
name Nome host. stringa (obbligatoria)

IpSecurityRestrictionRule

Nome Descrizione Valore
azione Consenti o Nega regole per determinare l'indirizzo IP in ingresso. Nota: le regole possono essere costituite solo da ALL Allow o ALL Deny 'Allow'
'Deny' (obbligatorio)
description Descrivere la regola di restrizione IP inviata all'app contenitore. È un campo facoltativo. string
ipAddressRange Notazione CIDR per corrispondere all'indirizzo IP in ingresso stringa (obbligatoria)
name Nome per la regola di restrizione IP. stringa (obbligatoria)

IngressStickySessions

Nome Descrizione Valore
affinity Affinità di sessione sticky 'none'
'sticky'

TrafficWeight

Nome Descrizione Valore
label Associa un'etichetta di traffico a una revisione string
latestRevision Indica che il peso del traffico appartiene a una revisione stabile più recente bool
revisionName Nome di una revisione string
peso Peso del traffico assegnato a una revisione INT

RegistryCredentials

Nome Descrizione Valore
identity Identità gestita da usare per l'autenticazione con Registro Azure Container. Per le identità assegnate dall'utente, usare l'ID risorsa di identità assegnato dall'utente completo. Per le identità assegnate dal sistema, usare "system" string
passwordSecretRef Nome del segreto che contiene la password di accesso del Registro di sistema string
server Server registro contenitori string
username Nome utente registro contenitori string

Segreto

Nome Descrizione Valore
identity ID risorsa di un'identità gestita per l'autenticazione con Azure Key Vault o Sistema per l'uso di un'identità assegnata dal sistema. string
keyVaultUrl URL di Azure Key Vault che punta al segreto a cui fa riferimento l'app contenitore. string
name Nome segreto. string
Valore Valore segreto. string

Vincoli:
Valore sensibile. Passare come parametro sicuro.

Servizio

Nome Descrizione Valore
tipo Tipo di servizio Dev ContainerApp stringa (obbligatorio)

Modello

Nome Descrizione Valore
containers Elenco di definizioni di contenitore per l'app contenitore. Contenitore[]
initContainers Elenco di contenitori specializzati eseguiti prima dei contenitori di app. InitContainer[]
revisionSuffix Suffisso descrittivo aggiunto al nome della revisione string
scala Proprietà di ridimensionamento per l'app contenitore. Scalabilità
serviceBinds Elenco dei servizi app contenitore associati all'app ServiceBind[]
terminationGracePeriodSeconds La durata facoltativa in secondi dell'istanza dell'app contenitore deve terminare normalmente. Il valore deve essere un numero intero non negativo. Il valore zero indica l'arresto immediato tramite il segnale kill (nessuna opportunità di arresto). Se questo valore è nil, verrà utilizzato invece il periodo di tolleranza predefinito. Impostare questo valore più lungo del tempo di pulizia previsto per il processo. Il valore predefinito è 30 secondi. INT
volumes Elenco di definizioni di volume per l'app contenitore. Volume[]

Contenitore

Nome Descrizione Valore
args Argomenti del comando di avvio del contenitore. string[]
. Comando start del contenitore. string[]
env Variabili di ambiente del contenitore. EnvironmentVar[]
image Tag immagine contenitore. string
name Nome del contenitore personalizzato. string
probes Elenco di probe per il contenitore. ContainerAppProbe[]
resources Requisiti delle risorse del contenitore. ContainerResources
volumeMounts Montaggi del volume del contenitore. VolumeMount[]

EnvironmentVar

Nome Descrizione valore
name Nome della variabile di ambiente. string
secretRef Nome del segreto dell'app contenitore da cui eseguire il pull del valore della variabile di ambiente. string
Valore Valore della variabile di ambiente non segreto. string

ContainerAppProbe

Nome Descrizione Valore
failureThreshold Errori consecutivi minimi che il probe deve essere considerato non riuscito dopo l'esito positivo. Il valore predefinito è 3. Il valore minimo è 1. Il valore massimo è 10. INT
httpGet HTTPGet specifica la richiesta HTTP da eseguire. ContainerAppProbeHttpGet
initialDelaySeconds Il numero di secondi dopo l'avvio del contenitore prima che vengano avviati i probe di attività. Il valore minimo è 1. Il valore massimo è 60. INT
periodSeconds Frequenza (in secondi) per eseguire il probe. Il valore predefinito è 10 secondi. Il valore minimo è 1. Il valore massimo è 240. INT
successThreshold Numero minimo di successi consecutivi per il probe da considerare riuscito dopo l'esito negativo. Assume il valore predefinito 1. Deve essere 1 per la vita e l'avvio. Il valore minimo è 1. Il valore massimo è 10. INT
tcpSocket TCPSocket specifica un'azione che coinvolge una porta TCP. Hook TCP non ancora supportati. ContainerAppProbeTcpSocket
terminationGracePeriodSeconds La durata facoltativa in secondi del pod deve terminare normalmente in caso di errore del probe. Il periodo di tolleranza è la durata in secondi dopo che i processi in esecuzione nel pod vengono inviati un segnale di terminazione e il momento in cui i processi vengono interrotti forzatamente con un segnale di terminazione. Impostare questo valore più lungo del tempo di pulizia previsto per il processo. Se questo valore è nil, verrà usata la terminazione del podGracePeriodSeconds. In caso contrario, questo valore esegue l'override del valore fornito dalla specifica del pod. Il valore deve essere un numero intero non negativo. Il valore zero indica l'arresto immediato tramite il segnale kill (nessuna opportunità di arresto). Si tratta di un campo alfa e richiede l'abilitazione del controllo delle funzionalità ProbeTerminationGracePeriod. Il valore massimo è 3600 secondi (1 ora) INT
timeoutSeconds Numero di secondi dopo il quale si verifica il timeout del probe. Il valore predefinito è 1 secondo. Il valore minimo è 1. Il valore massimo è 240. INT
tipo Tipo di probe. 'Liveness'
'Idoneità'
'Startup'

ContainerAppProbeHttpGet

Nome Descrizione Valore
host Nome host a cui connettersi per impostazione predefinita all'INDIRIZZO IP del pod. È probabile che si voglia impostare "Host" in httpHeaders. string
httpHeaders Intestazioni personalizzate da impostare nella richiesta. HTTP consente intestazioni ripetute. ContainerAppProbeHttpGetHttpHeadersItem[]
path Percorso di accesso nel server HTTP. string
port Nome o numero della porta a cui accedere nel contenitore. Il numero deve essere compreso nell'intervallo compreso tra 1 e 65535. Il nome deve essere un IANA_SVC_NAME. int (obbligatorio)
scheme Schema da usare per la connessione all'host. Il valore predefinito è HTTP. 'HTTP'
'HTTPS'

ContainerAppProbeHttpGetHttpHeadersItem

Nome Descrizione valore
name Nome del campo di intestazione stringa (obbligatorio)
Valore Valore del campo di intestazione stringa (obbligatorio)

ContainerAppProbeTcpSocket

Nome Descrizione Valore
host Facoltativo: nome host a cui connettersi per impostazione predefinita all'INDIRIZZO IP del pod. string
port Numero o nome della porta a cui accedere nel contenitore. Il numero deve essere compreso nell'intervallo compreso tra 1 e 65535. Il nome deve essere un IANA_SVC_NAME. int (obbligatorio)

ContainerResources

Nome Descrizione Valore
cpu Cpu richiesta nei core, ad esempio 0,5 Per specificare un valore decimale, usare la funzione json(). int o json decimal
memoria Memoria necessaria, ad esempio "250 Mb" string

VolumeMount

Nome Descrizione Valore
mountPath Percorso all'interno del contenitore in cui deve essere montato il volume. Non deve contenere ':'. string
subPath Percorso all'interno del volume da cui deve essere montato il volume del contenitore. Il valore predefinito è "" (radice del volume). string
volumeName Deve corrispondere al nome di un volume. string

InitContainer

Nome Descrizione Valore
args Argomenti del comando di avvio del contenitore. string[]
. Comando start del contenitore. string[]
env Variabili di ambiente del contenitore. EnvironmentVar[]
image Tag immagine contenitore. string
name Nome del contenitore personalizzato. string
resources Requisiti delle risorse del contenitore. ContainerResources
volumeMounts Montaggi del volume del contenitore. VolumeMount[]

Scalabilità

Nome Descrizione Valore
maxReplicas facoltativo. Numero massimo di repliche di contenitori. Il valore predefinito è 10 se non impostato. INT
minReplicas facoltativo. Numero minimo di repliche del contenitore. INT
regole Regole di ridimensionamento. ScaleRule[]

ScaleRule

Nome Descrizione Valore
azureQueue Ridimensionamento basato su code di Azure. QueueScaleRule
custom Regola di scalabilità personalizzata. CustomScaleRule
http Scalabilità basata sulle richieste HTTP. HttpScaleRule
name Nome regola di scalabilità string
tcp Ridimensionamento basato sulle richieste TCP. TcpScaleRule

QueueScaleRule

Nome Descrizione Valore
auth Segreti di autenticazione per la regola di scalabilità della coda. ScaleRuleAuth[]
queueLength Lunghezza coda. INT
queueName Nome coda. string

ScaleRuleAuth

Nome Descrizione Valore
secretRef Nome del segreto da cui eseguire il pull dei parametri di autenticazione. string
triggerParameter Parametro trigger che usa il segreto string

CustomScaleRule

Nome Descrizione Valore
auth Segreti di autenticazione per la regola di scalabilità personalizzata. ScaleRuleAuth[]
metadata Proprietà dei metadati per descrivere la regola di scalabilità personalizzata. CustomScaleRuleMetadata
tipo Tipo della regola di scalabilità personalizzata
ad esempio: azure-servicebus, redis e così via.
string

CustomScaleRuleMetadata

Nome Descrizione Valore
{proprietà personalizzata} string

HttpScaleRule

Nome Descrizione Valore
auth Segreti di autenticazione per la regola di scalabilità personalizzata. ScaleRuleAuth[]
metadata Proprietà dei metadati per descrivere la regola di scalabilità HTTP. HttpScaleRuleMetadata

HttpScaleRuleMetadata

Nome Descrizione Valore
{proprietà personalizzata} string

TcpScaleRule

Nome Descrizione Valore
auth Segreti di autenticazione per la regola di scalabilità TCP. ScaleRuleAuth[]
metadata Proprietà dei metadati per descrivere la regola di scalabilità TCP. TcpScaleRuleMetadata

TcpScaleRuleMetadata

Nome Descrizione Valore
{proprietà personalizzata} string

ServiceBind

Nome Descrizione Valore
clientType Tipo del client da usare per connettersi al servizio string
customizedKeys Chiavi personalizzate per la personalizzazione dei valori inseriti nell'app ServiceBindCustomizedKeys
name Nome dell'associazione del servizio string
serviceId ID risorsa del servizio di destinazione string

ServiceBindCustomizedKeys

Nome Descrizione Valore
{proprietà personalizzata} string

Volume

Nome Descrizione Valore
mountOptions Opzioni di montaggio usate durante il montaggio della condivisione file di Azure o della condivisione file di Azure NFS. Deve essere una stringa delimitata da virgole. string
name Nome del volume. string
chiavi private Elenco dei segreti da aggiungere nel volume. Se non vengono forniti segreti, tutti i segreti nella raccolta verranno aggiunti al volume. SecretVolumeItem[]
storageName Nome della risorsa di archiviazione. Non è necessario specificare EmptyDir e Secret. string
storageType Tipo di archiviazione per il volume. Se non specificato, usare EmptyDir. 'AzureFile'
'EmptyDir'
'NfsAzureFile'
'Secret'

SecretVolumeItem

Nome Descrizione Valore
path Percorso del segreto del progetto. Se non viene specificato alcun percorso, per impostazione predefinita il percorso viene assegnato al nome del segreto elencato in secretRef. string
secretRef Nome del segreto dell'app contenitore da cui eseguire il pull del valore del segreto. string

Modelli di avvio rapido

I modelli di avvio rapido seguenti distribuiscono questo tipo di risorsa.

Modello Descrizione
Crea un'app contenitore e un ambiente con registro

Distribuisci in Azure
Creare un ambiente app contenitore con un'app contenitore di base da un Registro Azure Container. Distribuisce anche un'area di lavoro Log Analytics per archiviare i log.
Crea un'app contenitore con un ambiente app contenitore

Distribuisci in Azure
Creare un ambiente app contenitore con un'app contenitore di base. Distribuisce anche un'area di lavoro Log Analytics per archiviare i log.
Crea un'app contenitore all'interno di un ambiente app contenitore

Distribuisci in Azure
Creare un ambiente app contenitore con un'app contenitore di base. Distribuisce anche un'area di lavoro Log Analytics per archiviare i log.
Crea un'app contenitore con una regola di ridimensionamento HTTP definita

Distribuisci in Azure
Creare un ambiente app contenitore con un'app contenitore di base che viene ridimensionata in base al traffico HTTP.
Crea un ambiente app contenitore esterno con una rete virtuale

Distribuisci in Azure
Crea un ambiente app contenitore esterno con una rete virtuale.
Crea un ambiente app contenitore interno con una rete virtuale

Distribuisci in Azure
Crea un ambiente app contenitore interno con una rete virtuale.

Definizione di risorsa del modello di Resource Manager

Il tipo di risorsa containerApps può essere distribuito con operazioni destinate a:

Per un elenco delle proprietà modificate in ogni versione dell'API, vedere Log delle modifiche.

Formato di risorsa

Per creare una risorsa Microsoft.App/containerApps, aggiungere il codice JSON seguente al modello.

{
  "type": "Microsoft.App/containerApps",
  "apiVersion": "2023-11-02-preview",
  "name": "string",
  "location": "string",
  "tags": {
    "tagName1": "tagValue1",
    "tagName2": "tagValue2"
  },
  "extendedLocation": {
    "name": "string",
    "type": "CustomLocation"
  },
  "identity": {
    "type": "string",
    "userAssignedIdentities": {
      "{customized property}": {}
    }
  },
  "managedBy": "string",
  "properties": {
    "configuration": {
      "activeRevisionsMode": "string",
      "dapr": {
        "appId": "string",
        "appPort": "int",
        "appProtocol": "string",
        "enableApiLogging": "bool",
        "enabled": "bool",
        "httpMaxRequestSize": "int",
        "httpReadBufferSize": "int",
        "logLevel": "string"
      },
      "ingress": {
        "additionalPortMappings": [
          {
            "exposedPort": "int",
            "external": "bool",
            "targetPort": "int"
          }
        ],
        "allowInsecure": "bool",
        "clientCertificateMode": "string",
        "corsPolicy": {
          "allowCredentials": "bool",
          "allowedHeaders": [ "string" ],
          "allowedMethods": [ "string" ],
          "allowedOrigins": [ "string" ],
          "exposeHeaders": [ "string" ],
          "maxAge": "int"
        },
        "customDomains": [
          {
            "bindingType": "string",
            "certificateId": "string",
            "name": "string"
          }
        ],
        "exposedPort": "int",
        "external": "bool",
        "ipSecurityRestrictions": [
          {
            "action": "string",
            "description": "string",
            "ipAddressRange": "string",
            "name": "string"
          }
        ],
        "stickySessions": {
          "affinity": "string"
        },
        "targetPort": "int",
        "targetPortHttpScheme": "string",
        "traffic": [
          {
            "label": "string",
            "latestRevision": "bool",
            "revisionName": "string",
            "weight": "int"
          }
        ],
        "transport": "string"
      },
      "maxInactiveRevisions": "int",
      "registries": [
        {
          "identity": "string",
          "passwordSecretRef": "string",
          "server": "string",
          "username": "string"
        }
      ],
      "secrets": [
        {
          "identity": "string",
          "keyVaultUrl": "string",
          "name": "string",
          "value": "string"
        }
      ],
      "service": {
        "type": "string"
      }
    },
    "environmentId": "string",
    "managedEnvironmentId": "string",
    "template": {
      "containers": [
        {
          "args": [ "string" ],
          "command": [ "string" ],
          "env": [
            {
              "name": "string",
              "secretRef": "string",
              "value": "string"
            }
          ],
          "image": "string",
          "name": "string",
          "probes": [
            {
              "failureThreshold": "int",
              "httpGet": {
                "host": "string",
                "httpHeaders": [
                  {
                    "name": "string",
                    "value": "string"
                  }
                ],
                "path": "string",
                "port": "int",
                "scheme": "string"
              },
              "initialDelaySeconds": "int",
              "periodSeconds": "int",
              "successThreshold": "int",
              "tcpSocket": {
                "host": "string",
                "port": "int"
              },
              "terminationGracePeriodSeconds": "int",
              "timeoutSeconds": "int",
              "type": "string"
            }
          ],
          "resources": {
            "cpu": "[json('decimal-as-string')]",
            "memory": "string"
          },
          "volumeMounts": [
            {
              "mountPath": "string",
              "subPath": "string",
              "volumeName": "string"
            }
          ]
        }
      ],
      "initContainers": [
        {
          "args": [ "string" ],
          "command": [ "string" ],
          "env": [
            {
              "name": "string",
              "secretRef": "string",
              "value": "string"
            }
          ],
          "image": "string",
          "name": "string",
          "resources": {
            "cpu": "[json('decimal-as-string')]",
            "memory": "string"
          },
          "volumeMounts": [
            {
              "mountPath": "string",
              "subPath": "string",
              "volumeName": "string"
            }
          ]
        }
      ],
      "revisionSuffix": "string",
      "scale": {
        "maxReplicas": "int",
        "minReplicas": "int",
        "rules": [
          {
            "azureQueue": {
              "auth": [
                {
                  "secretRef": "string",
                  "triggerParameter": "string"
                }
              ],
              "queueLength": "int",
              "queueName": "string"
            },
            "custom": {
              "auth": [
                {
                  "secretRef": "string",
                  "triggerParameter": "string"
                }
              ],
              "metadata": {
                "{customized property}": "string"
              },
              "type": "string"
            },
            "http": {
              "auth": [
                {
                  "secretRef": "string",
                  "triggerParameter": "string"
                }
              ],
              "metadata": {
                "{customized property}": "string"
              }
            },
            "name": "string",
            "tcp": {
              "auth": [
                {
                  "secretRef": "string",
                  "triggerParameter": "string"
                }
              ],
              "metadata": {
                "{customized property}": "string"
              }
            }
          }
        ]
      },
      "serviceBinds": [
        {
          "clientType": "string",
          "customizedKeys": {
            "{customized property}": "string"
          },
          "name": "string",
          "serviceId": "string"
        }
      ],
      "terminationGracePeriodSeconds": "int",
      "volumes": [
        {
          "mountOptions": "string",
          "name": "string",
          "secrets": [
            {
              "path": "string",
              "secretRef": "string"
            }
          ],
          "storageName": "string",
          "storageType": "string"
        }
      ]
    },
    "workloadProfileName": "string"
  }
}

Valori delle proprietà

containerApps

Nome Descrizione Valore
tipo Tipo di risorsa 'Microsoft.App/containerApps'
apiVersion Versione dell'API della risorsa '2023-11-02-preview'
name Nome della risorsa stringa (obbligatoria)

Limite di caratteri: 2-32

Caratteri validi:
Lettere minuscole, numeri e trattini..

Inizia con la lettera e termina con alfanumerico.
posizione Posizione geografica in cui vive la risorsa stringa (obbligatoria)
tags Tag di risorse. Dizionario dei nomi e dei valori dei tag. Vedere Tag nei modelli
extendedLocation Tipo complesso della posizione estesa. ExtendedLocation
identity identità gestite per l'interazione con altri servizi di Azure senza mantenere segreti o credenziali nel codice. ManagedServiceIdentity
managedBy ID risorsa completo della risorsa che gestisce questa risorsa. Indica se questa risorsa viene gestita da un'altra risorsa di Azure. Se questa operazione è presente, la distribuzione in modalità completa non eliminerà la risorsa se viene rimossa dal modello poiché è gestita da un'altra risorsa. string
properties Proprietà specifiche della risorsa ContainerApp ContainerAppProperties

ExtendedLocation

Nome Descrizione valore
name Nome della posizione estesa. string
type Tipo della posizione estesa. 'CustomLocation'

ManagedServiceIdentity

Nome Descrizione Valore
tipo Tipo di identità del servizio gestito (in cui sono consentiti sia i tipi SystemAssigned che UserAssigned). 'Nessuno'
'SystemAssigned'
'SystemAssigned,UserAssigned'
'UserAssigned' (obbligatorio)
userAssignedIdentities Set di identità assegnate dall'utente associate alla risorsa. Le chiavi del dizionario userAssignedIdentities saranno id risorsa ARM nel formato : '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. I valori del dizionario possono essere oggetti vuoti ({}) nelle richieste. UserAssignedIdentities

UserAssignedIdentities

Nome Descrizione Valore
{proprietà personalizzata} UserAssignedIdentity

UserAssignedIdentity

Questo oggetto non contiene proprietà da impostare durante la distribuzione. Tutte le proprietà sono ReadOnly.

ContainerAppProperties

Nome Descrizione Valore
configurazione Proprietà di configurazione dell'app contenitore non con versioni. Configuration
environmentId ID risorsa dell'ambiente. string
managedEnvironmentId Deprecato. ID risorsa dell'ambiente dell'app contenitore. string
template Definizione dell'applicazione con versione del contenitore. Modello
workloadProfileName Nome del profilo del carico di lavoro da aggiungere per l'esecuzione dell'app contenitore. string

Configurazione

Nome Descrizione Valore
activeRevisionsMode ActiveRevisionsMode controlla la modalità di gestione delle revisioni attive per l'app Container:
{list} {item} Multiplo: è possibile attivare più revisioni. {/item} {item} Single: una sola revisione può essere attiva alla volta. I pesi delle revisioni non possono essere usati in questa modalità. Se non viene specificato alcun valore, si tratta dell'impostazione predefinita. {/item} {/list}
'Multiple'
'Single'
dapr Configurazione dapr per l'app contenitore. Dapr
Ingresso Configurazioni in ingresso. Dati in ingresso
maxInactiveRevisions facoltativo. Le revisioni inattive massime che un'app contenitore può avere. INT
registries Raccolta di credenziali del registro contenitori privato per i contenitori usati dall'app Contenitore RegistryCredentials[]
chiavi private Raccolta di segreti usati da un'app Contenitore Segreto[]
service App contenitore come contenitore di sviluppo servizio app Servizio

Dapr

Nome Descrizione valore
appId Identificatore dell'applicazione Dapr string
appPort Indica a Dapr la porta su cui l'applicazione è in ascolto INT
appProtocol Indica a Dapr quale protocollo sta usando l'applicazione. Le opzioni valide sono http e grpc. Il valore predefinito è http 'grpc'
'http'
enableApiLogging Abilita la registrazione API per il sidecar Dapr bool
Enabled Valore booleano che indica se l'auto laterale Dapr è abilitata bool
httpMaxRequestSize Aumento della dimensione massima del corpo della richiesta del parametro dei server http e grpc in MB per gestire il caricamento di file di grandi dimensioni. Il valore predefinito è 4 MB. INT
httpReadBufferSize Dapr max size of http header read buffer in KB to handle when sending multi-KB headers .Dapr max size of http header read buffer in KB to handle when sending multi-KB header headers. Il valore predefinito è 65 KB. INT
logLevel Imposta il livello di log per l'sidecar Dapr. I valori consentiti sono debug, info, avviso, errore. Il valore predefinito è info. 'debug'
'error'
'info'
'warn'

Dati in ingresso

Nome Descrizione Valore
additionalPortMappings Impostazioni per esporre porte aggiuntive nell'app contenitore IngressPortMapping[]
allowInsecure Bool che indica se sono consentite connessioni HTTP a. Se impostato su false connessioni HTTP vengono reindirizzate automaticamente alle connessioni HTTPS bool
clientCertificateMode Modalità certificato client per l'autenticazione mTLS. Ignora indica che il certificato client viene eliminato dal server durante l'inoltro. Accept indica che il server inoltra il certificato client ma non richiede un certificato client. Richiedi indica che il server richiede un certificato client. 'accept'
'ignore'
'require'
corsPolicy Criteri CORS per l'app contenitore CorsPolicy
customDomains associazioni di dominio personalizzate per i nomi host di App contenitore. CustomDomain[]
exposedPort Porta esposta nei contenitori per il traffico TCP da ingresso INT
external Bool che indica se l'app espone un endpoint HTTP esterno bool
ipSecurityRestrictions Regole per limitare l'indirizzo IP in ingresso. IpSecurityRestrictionRule[]
stickySessions Sessioni permanenti per la modalità revisione singola IngressStickySessions
targetPort Porta di destinazione nei contenitori per il traffico da ingresso INT
targetPortHttpScheme Indica se un'app HTTP è in ascolto su http o https 'http'
'https'
Traffico Pesi del traffico per le revisioni dell'app TrafficWeight[]
transport Protocollo di trasporto in ingresso 'auto'
'http'
'http2'
'tcp'

IngressPortMapping

Nome Descrizione Valore
exposedPort Specifica la porta esposta per la porta di destinazione. Se non specificato, il valore predefinito è la porta di destinazione INT
external Specifica se la porta dell'app è accessibile all'esterno dell'ambiente bool (obbligatorio)
targetPort Specifica il contenitore dell'utente della porta in ascolto int (obbligatorio)

CorsPolicy

Nome Descrizione Valore
allowCredentials Specifica se la risorsa consente le credenziali bool
allowedHeaders Specifica il contenuto per l'intestazione access-control-allow-headers string[]
allowedMethods Specifica il contenuto per l'intestazione access-control-allow-methods string[]
allowedOrigins Specifica il contenuto per l'intestazione access-control-allow-origins string[] (obbligatorio)
esponiheader Specifica il contenuto per l'intestazione access-control-expose-headers string[]
Maxage Specifica il contenuto per l'intestazione access-control-max-age INT

CustomDomain

Nome Descrizione Valore
bindingType Custom Domain tipo di associazione. 'Disabilitato'
'SniEnabled'
CertificateId ID risorsa del certificato da associare a questo nome host. Deve esistere nell'ambiente gestito. string
name Nome host. stringa (obbligatoria)

IpSecurityRestrictionRule

Nome Descrizione Valore
azione Consenti o Nega regole per determinare l'indirizzo IP in ingresso. Nota: le regole possono essere costituite solo da ALL Allow o ALL Deny 'Allow'
'Deny' (obbligatorio)
description Descrivere la regola di restrizione IP inviata all'app contenitore. È un campo facoltativo. string
ipAddressRange Notazione CIDR per corrispondere all'indirizzo IP in ingresso stringa (obbligatoria)
name Nome per la regola di restrizione IP. stringa (obbligatoria)

IngressStickySessions

Nome Descrizione Valore
affinity Affinità sessione sticky 'nessuno'
'sticky'

TrafficWeight

Nome Descrizione Valore
label Associa un'etichetta di traffico a una revisione string
latestRevision Indica che il peso del traffico appartiene a una revisione stabile più recente bool
revisionName Nome di una revisione string
peso Peso del traffico assegnato a una revisione INT

RegistryCredentials

Nome Descrizione Valore
identity Identità gestita da usare per l'autenticazione con Registro Azure Container. Per le identità assegnate dall'utente, usare l'ID risorsa di identità assegnato dall'utente completo. Per le identità assegnate dal sistema, usare "system" string
passwordSecretRef Nome del segreto che contiene la password di accesso del Registro di sistema string
server Server registro contenitori string
username Nome utente registro contenitori string

Segreto

Nome Descrizione Valore
identity ID risorsa di un'identità gestita per l'autenticazione con Azure Key Vault o Sistema per l'uso di un'identità assegnata dal sistema. string
keyVaultUrl URL di Azure Key Vault che punta al segreto a cui fa riferimento l'app contenitore. string
name Nome segreto. string
Valore Valore segreto. string

Vincoli:
Valore sensibile. Passare come parametro sicuro.

Servizio

Nome Descrizione Valore
tipo Tipo di servizio Dev ContainerApp stringa (obbligatorio)

Modello

Nome Descrizione Valore
containers Elenco di definizioni di contenitore per l'app contenitore. Contenitore[]
initContainers Elenco di contenitori specializzati eseguiti prima dei contenitori di app. InitContainer[]
revisionSuffix Suffisso descrittivo aggiunto al nome della revisione string
scala Proprietà di ridimensionamento per l'app contenitore. Scalabilità
serviceBinds Elenco dei servizi app contenitore associati all'app ServiceBind[]
terminationGracePeriodSeconds La durata facoltativa in secondi dell'istanza dell'app contenitore deve terminare normalmente. Il valore deve essere un numero intero non negativo. Il valore zero indica l'arresto immediato tramite il segnale kill (nessuna opportunità di arresto). Se questo valore è nil, verrà utilizzato invece il periodo di tolleranza predefinito. Impostare questo valore più lungo del tempo di pulizia previsto per il processo. Il valore predefinito è 30 secondi. INT
volumes Elenco di definizioni di volume per l'app contenitore. Volume[]

Contenitore

Nome Descrizione Valore
args Argomenti del comando di avvio del contenitore. string[]
. Comando start del contenitore. string[]
env Variabili di ambiente del contenitore. EnvironmentVar[]
image Tag immagine contenitore. string
name Nome del contenitore personalizzato. string
probes Elenco di probe per il contenitore. ContainerAppProbe[]
resources Requisiti delle risorse del contenitore. ContainerResources
volumeMounts Montaggi del volume del contenitore. VolumeMount[]

EnvironmentVar

Nome Descrizione valore
name Nome della variabile di ambiente. string
secretRef Nome del segreto dell'app contenitore da cui eseguire il pull del valore della variabile di ambiente. string
Valore Valore della variabile di ambiente non segreto. string

ContainerAppProbe

Nome Descrizione Valore
failureThreshold Errori consecutivi minimi che il probe deve essere considerato non riuscito dopo l'esito positivo. Il valore predefinito è 3. Il valore minimo è 1. Il valore massimo è 10. INT
httpGet HTTPGet specifica la richiesta HTTP da eseguire. ContainerAppProbeHttpGet
initialDelaySeconds Il numero di secondi dopo l'avvio del contenitore prima che vengano avviati i probe di attività. Il valore minimo è 1. Il valore massimo è 60. INT
periodSeconds Frequenza (in secondi) per eseguire il probe. Il valore predefinito è 10 secondi. Il valore minimo è 1. Il valore massimo è 240. INT
successThreshold Numero minimo di successi consecutivi per il probe da considerare riuscito dopo l'esito negativo. Assume il valore predefinito 1. Deve essere 1 per la vita e l'avvio. Il valore minimo è 1. Il valore massimo è 10. INT
tcpSocket TCPSocket specifica un'azione che coinvolge una porta TCP. Hook TCP non ancora supportati. ContainerAppProbeTcpSocket
terminationGracePeriodSeconds La durata facoltativa in secondi del pod deve terminare normalmente in caso di errore del probe. Il periodo di tolleranza è la durata in secondi dopo che i processi in esecuzione nel pod vengono inviati un segnale di terminazione e il momento in cui i processi vengono interrotti forzatamente con un segnale di terminazione. Impostare questo valore più lungo del tempo di pulizia previsto per il processo. Se questo valore è nil, verrà usata la terminazione del podGracePeriodSeconds. In caso contrario, questo valore esegue l'override del valore fornito dalla specifica del pod. Il valore deve essere un numero intero non negativo. Il valore zero indica l'arresto immediato tramite il segnale kill (nessuna opportunità di arresto). Si tratta di un campo alfa e richiede l'abilitazione del controllo delle funzionalità ProbeTerminationGracePeriod. Il valore massimo è 3600 secondi (1 ora) INT
timeoutSeconds Numero di secondi dopo il quale si verifica il timeout del probe. Il valore predefinito è 1 secondo. Il valore minimo è 1. Il valore massimo è 240. INT
tipo Tipo di probe. 'Liveness'
'Idoneità'
'Startup'

ContainerAppProbeHttpGet

Nome Descrizione Valore
host Nome host a cui connettersi per impostazione predefinita all'INDIRIZZO IP del pod. È probabile che si voglia impostare "Host" in httpHeaders. string
httpHeaders Intestazioni personalizzate da impostare nella richiesta. HTTP consente intestazioni ripetute. ContainerAppProbeHttpGetHttpHeadersItem[]
path Percorso di accesso nel server HTTP. string
port Nome o numero della porta a cui accedere nel contenitore. Il numero deve essere compreso nell'intervallo compreso tra 1 e 65535. Il nome deve essere un IANA_SVC_NAME. int (obbligatorio)
scheme Schema da usare per la connessione all'host. Il valore predefinito è HTTP. 'HTTP'
'HTTPS'

ContainerAppProbeHttpGetHttpHeadersItem

Nome Descrizione valore
name Nome del campo di intestazione stringa (obbligatorio)
Valore Valore del campo di intestazione stringa (obbligatorio)

ContainerAppProbeTcpSocket

Nome Descrizione Valore
host Facoltativo: nome host a cui connettersi per impostazione predefinita all'INDIRIZZO IP del pod. string
port Numero o nome della porta a cui accedere nel contenitore. Il numero deve essere compreso nell'intervallo compreso tra 1 e 65535. Il nome deve essere un IANA_SVC_NAME. int (obbligatorio)

ContainerResources

Nome Descrizione Valore
cpu Cpu richiesta nei core, ad esempio 0,5 Per specificare un valore decimale, usare la funzione json(). int o json decimal
memoria Memoria necessaria, ad esempio "250 Mb" string

VolumeMount

Nome Descrizione Valore
mountPath Percorso all'interno del contenitore in cui deve essere montato il volume. Non deve contenere ':'. string
subPath Percorso all'interno del volume da cui deve essere montato il volume del contenitore. Il valore predefinito è "" (radice del volume). string
volumeName Deve corrispondere al nome di un volume. string

InitContainer

Nome Descrizione Valore
args Argomenti del comando di avvio del contenitore. string[]
. Comando start del contenitore. string[]
env Variabili di ambiente del contenitore. EnvironmentVar[]
image Tag immagine contenitore. string
name Nome del contenitore personalizzato. string
resources Requisiti delle risorse del contenitore. ContainerResources
volumeMounts Montaggi del volume del contenitore. VolumeMount[]

Scalabilità

Nome Descrizione Valore
maxReplicas facoltativo. Numero massimo di repliche di contenitori. Il valore predefinito è 10 se non impostato. INT
minReplicas facoltativo. Numero minimo di repliche del contenitore. INT
regole Regole di ridimensionamento. ScaleRule[]

ScaleRule

Nome Descrizione Valore
azureQueue Ridimensionamento basato su code di Azure. QueueScaleRule
custom Regola di scalabilità personalizzata. CustomScaleRule
http Scalabilità basata sulle richieste HTTP. HttpScaleRule
name Nome regola di scalabilità string
tcp Ridimensionamento basato sulle richieste TCP. TcpScaleRule

QueueScaleRule

Nome Descrizione Valore
auth Segreti di autenticazione per la regola di scalabilità della coda. ScaleRuleAuth[]
queueLength Lunghezza coda. INT
queueName Nome coda. string

ScaleRuleAuth

Nome Descrizione Valore
secretRef Nome del segreto da cui eseguire il pull dei parametri di autenticazione. string
triggerParameter Parametro trigger che usa il segreto string

CustomScaleRule

Nome Descrizione Valore
auth Segreti di autenticazione per la regola di scalabilità personalizzata. ScaleRuleAuth[]
metadata Proprietà dei metadati per descrivere la regola di scalabilità personalizzata. CustomScaleRuleMetadata
tipo Tipo della regola di scalabilità personalizzata
ad esempio: azure-servicebus, redis e così via.
string

CustomScaleRuleMetadata

Nome Descrizione Valore
{proprietà personalizzata} string

HttpScaleRule

Nome Descrizione Valore
auth Segreti di autenticazione per la regola di scalabilità personalizzata. ScaleRuleAuth[]
metadata Proprietà dei metadati per descrivere la regola di scalabilità HTTP. HttpScaleRuleMetadata

HttpScaleRuleMetadata

Nome Descrizione Valore
{proprietà personalizzata} string

TcpScaleRule

Nome Descrizione Valore
auth Segreti di autenticazione per la regola di scalabilità TCP. ScaleRuleAuth[]
metadata Proprietà dei metadati per descrivere la regola di scalabilità TCP. TcpScaleRuleMetadata

TcpScaleRuleMetadata

Nome Descrizione Valore
{proprietà personalizzata} string

ServiceBind

Nome Descrizione Valore
clientType Tipo del client da usare per connettersi al servizio string
customizedKeys Chiavi personalizzate per la personalizzazione dei valori inseriti nell'app ServiceBindCustomizedKeys
name Nome dell'associazione del servizio string
serviceId ID risorsa del servizio di destinazione string

ServiceBindCustomizedKeys

Nome Descrizione Valore
{proprietà personalizzata} string

Volume

Nome Descrizione Valore
mountOptions Opzioni di montaggio usate durante il montaggio della condivisione file di Azure o della condivisione file NFS di Azure. Deve essere una stringa delimitata da virgole. string
name Nome del volume. string
chiavi private Elenco dei segreti da aggiungere nel volume. Se non vengono forniti segreti, tutti i segreti nella raccolta verranno aggiunti al volume. SecretVolumeItem[]
storageName Nome della risorsa di archiviazione. Non è necessario fornire per EmptyDir e Secret. string
storageType Tipo di archiviazione per il volume. Se non specificato, usare EmptyDir. 'AzureFile'
'EmptyDir'
'NfsAzureFile'
'Segreto'

SecretVolumeItem

Nome Descrizione Valore
path Percorso al segreto del progetto. Se non viene specificato alcun percorso, il percorso è predefinito per il nome del segreto elencato in secretRef. string
secretRef Nome del segreto dell'app contenitore da cui eseguire il pull del valore segreto. string

Modelli di avvio rapido

I modelli di avvio rapido seguenti distribuiscono questo tipo di risorsa.

Modello Descrizione
Crea un'app e un ambiente contenitore con Registro di sistema

Distribuisci in Azure
Creare un ambiente app contenitore con un'app contenitore di base da un Registro Azure Container. Distribuisce anche un'area di lavoro Log Analytics per archiviare i log.
Crea un'app per due contenitori con un ambiente app contenitore

Distribuisci in Azure
Creare un ambiente di due app contenitore con un'app contenitore di base. Distribuisce anche un'area di lavoro Log Analytics per archiviare i log.
Crea un'app contenitore all'interno di un ambiente app contenitore

Distribuisci in Azure
Creare un ambiente app contenitore con un'app contenitore di base. Distribuisce anche un'area di lavoro Log Analytics per archiviare i log.
Crea un'app contenitore con una regola di ridimensionamento HTTP definita

Distribuisci in Azure
Creare un ambiente app contenitore con un'app contenitore di base che ridimensiona in base al traffico HTTP.
Crea un ambiente app contenitore esterno con una rete virtuale

Distribuisci in Azure
Crea un ambiente app contenitore esterno con una rete virtuale.
Crea un ambiente app contenitore interno con una rete virtuale

Distribuisci in Azure
Crea un ambiente app contenitore interno con una rete virtuale.

Definizione della risorsa Terraform (provider AzAPI)

Il tipo di risorsa containerApps può essere distribuito con le operazioni di destinazione:

  • Gruppi di risorse

Per un elenco delle proprietà modificate in ogni versione dell'API, vedere log delle modifiche.

Formato di risorsa

Per creare una risorsa Microsoft.App/containerApps, aggiungere il modello Terraform seguente.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.App/containerApps@2023-11-02-preview"
  name = "string"
  location = "string"
  parent_id = "string"
  tags = {
    tagName1 = "tagValue1"
    tagName2 = "tagValue2"
  }
  identity {
    type = "string"
    identity_ids = []
  }
  body = jsonencode({
    properties = {
      configuration = {
        activeRevisionsMode = "string"
        dapr = {
          appId = "string"
          appPort = int
          appProtocol = "string"
          enableApiLogging = bool
          enabled = bool
          httpMaxRequestSize = int
          httpReadBufferSize = int
          logLevel = "string"
        }
        ingress = {
          additionalPortMappings = [
            {
              exposedPort = int
              external = bool
              targetPort = int
            }
          ]
          allowInsecure = bool
          clientCertificateMode = "string"
          corsPolicy = {
            allowCredentials = bool
            allowedHeaders = [
              "string"
            ]
            allowedMethods = [
              "string"
            ]
            allowedOrigins = [
              "string"
            ]
            exposeHeaders = [
              "string"
            ]
            maxAge = int
          }
          customDomains = [
            {
              bindingType = "string"
              certificateId = "string"
              name = "string"
            }
          ]
          exposedPort = int
          external = bool
          ipSecurityRestrictions = [
            {
              action = "string"
              description = "string"
              ipAddressRange = "string"
              name = "string"
            }
          ]
          stickySessions = {
            affinity = "string"
          }
          targetPort = int
          targetPortHttpScheme = "string"
          traffic = [
            {
              label = "string"
              latestRevision = bool
              revisionName = "string"
              weight = int
            }
          ]
          transport = "string"
        }
        maxInactiveRevisions = int
        registries = [
          {
            identity = "string"
            passwordSecretRef = "string"
            server = "string"
            username = "string"
          }
        ]
        secrets = [
          {
            identity = "string"
            keyVaultUrl = "string"
            name = "string"
            value = "string"
          }
        ]
        service = {
          type = "string"
        }
      }
      environmentId = "string"
      managedEnvironmentId = "string"
      template = {
        containers = [
          {
            args = [
              "string"
            ]
            command = [
              "string"
            ]
            env = [
              {
                name = "string"
                secretRef = "string"
                value = "string"
              }
            ]
            image = "string"
            name = "string"
            probes = [
              {
                failureThreshold = int
                httpGet = {
                  host = "string"
                  httpHeaders = [
                    {
                      name = "string"
                      value = "string"
                    }
                  ]
                  path = "string"
                  port = int
                  scheme = "string"
                }
                initialDelaySeconds = int
                periodSeconds = int
                successThreshold = int
                tcpSocket = {
                  host = "string"
                  port = int
                }
                terminationGracePeriodSeconds = int
                timeoutSeconds = int
                type = "string"
              }
            ]
            resources = {
              cpu = "decimal-as-string"
              memory = "string"
            }
            volumeMounts = [
              {
                mountPath = "string"
                subPath = "string"
                volumeName = "string"
              }
            ]
          }
        ]
        initContainers = [
          {
            args = [
              "string"
            ]
            command = [
              "string"
            ]
            env = [
              {
                name = "string"
                secretRef = "string"
                value = "string"
              }
            ]
            image = "string"
            name = "string"
            resources = {
              cpu = "decimal-as-string"
              memory = "string"
            }
            volumeMounts = [
              {
                mountPath = "string"
                subPath = "string"
                volumeName = "string"
              }
            ]
          }
        ]
        revisionSuffix = "string"
        scale = {
          maxReplicas = int
          minReplicas = int
          rules = [
            {
              azureQueue = {
                auth = [
                  {
                    secretRef = "string"
                    triggerParameter = "string"
                  }
                ]
                queueLength = int
                queueName = "string"
              }
              custom = {
                auth = [
                  {
                    secretRef = "string"
                    triggerParameter = "string"
                  }
                ]
                metadata = {
                  {customized property} = "string"
                }
                type = "string"
              }
              http = {
                auth = [
                  {
                    secretRef = "string"
                    triggerParameter = "string"
                  }
                ]
                metadata = {
                  {customized property} = "string"
                }
              }
              name = "string"
              tcp = {
                auth = [
                  {
                    secretRef = "string"
                    triggerParameter = "string"
                  }
                ]
                metadata = {
                  {customized property} = "string"
                }
              }
            }
          ]
        }
        serviceBinds = [
          {
            clientType = "string"
            customizedKeys = {
              {customized property} = "string"
            }
            name = "string"
            serviceId = "string"
          }
        ]
        terminationGracePeriodSeconds = int
        volumes = [
          {
            mountOptions = "string"
            name = "string"
            secrets = [
              {
                path = "string"
                secretRef = "string"
              }
            ]
            storageName = "string"
            storageType = "string"
          }
        ]
      }
      workloadProfileName = "string"
    }
    extendedLocation = {
      name = "string"
      type = "CustomLocation"
    }
    managedBy = "string"
  })
}

Valori delle proprietà

containerApps

Nome Descrizione Valore
tipo Tipo di risorsa "Microsoft.App/containerApps@2023-11-02-preview"
name Nome della risorsa stringa (obbligatoria)

Limite di caratteri: 2-32

Caratteri validi:
Lettere minuscole, numeri e trattini..

Inizia con la lettera e termina con alfanumerico.
posizione Posizione geografica in cui vive la risorsa stringa (obbligatoria)
parent_id Per distribuire in un gruppo di risorse, usare l'ID del gruppo di risorse. stringa (obbligatoria)
tags Tag di risorse. Dizionario dei nomi e dei valori dei tag.
extendedLocation Tipo complesso della posizione estesa. ExtendedLocation
identity identità gestite per l'interazione con altri servizi di Azure senza mantenere segreti o credenziali nel codice. ManagedServiceIdentity
managedBy ID risorsa completo della risorsa che gestisce questa risorsa. Indica se questa risorsa viene gestita da un'altra risorsa di Azure. Se questa operazione è presente, la distribuzione in modalità completa non eliminerà la risorsa se viene rimossa dal modello poiché è gestita da un'altra risorsa. string
properties Proprietà specifiche della risorsa ContainerApp ContainerAppProperties

ExtendedLocation

Nome Descrizione valore
name Nome della posizione estesa. string
type Tipo della posizione estesa. "CustomLocation"

ManagedServiceIdentity

Nome Descrizione Valore
tipo Tipo di identità del servizio gestito (in cui sono consentiti i tipi SystemAssigned e UserAssigned). "SystemAssigned"
"SystemAssigned,UserAssigned"
"UserAssigned" (obbligatorio)
identity_ids Set di identità assegnate dall'utente associate alla risorsa. Le chiavi del dizionario userAssignedIdentities saranno ID risorsa ARM nel formato : '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. I valori del dizionario possono essere oggetti vuoti ({}) nelle richieste. Matrice di ID identità utente.

UserAssignedIdentities

Nome Descrizione Valore
{proprietà personalizzata} UserAssignedIdentity

UserAssignedIdentity

Questo oggetto non contiene proprietà da impostare durante la distribuzione. Tutte le proprietà sono ReadOnly.

ContainerAppProperties

Nome Descrizione Valore
configurazione Proprietà di configurazione dell'app contenitore non con controllo delle versioni. Configuration
environmentId ID risorsa dell'ambiente. string
managedEnvironmentId Deprecato. ID risorsa dell'ambiente dell'app contenitore. string
template Definizione dell'applicazione con controllo delle versioni dell'app contenitore. Modello
workloadProfileName Nome del profilo del carico di lavoro da aggiungere per l'esecuzione dell'app contenitore. string

Configurazione

Nome Descrizione Valore
activeRevisionsMode ActiveRevisionsMode controlla la modalità di gestione delle revisioni attive per l'app Contenitore:
{list} {item} Multiplo: possono essere attive più revisioni. {/item} {item} Single: una sola revisione può essere attiva alla volta. I pesi delle revisioni non possono essere usati in questa modalità. Se non viene specificato alcun valore, si tratta dell'impostazione predefinita. {/item} {/list}
"Multiple"
"Single"
dapr Configurazione dapr per l'app contenitore. Dapr
Ingresso Configurazioni in ingresso. Dati in ingresso
maxInactiveRevisions facoltativo. Le revisioni inattive massime che un'app contenitore può avere. INT
registries Raccolta di credenziali del registro contenitori privato per i contenitori usati dall'app Contenitore RegistryCredentials[]
chiavi private Raccolta di segreti usati da un'app Contenitore Segreto[]
service App contenitore come contenitore di sviluppo servizio app Servizio

Dapr

Nome Descrizione valore
appId Identificatore dell'applicazione Dapr string
appPort Indica a Dapr la porta su cui l'applicazione è in ascolto INT
appProtocol Indica a Dapr quale protocollo sta usando l'applicazione. Le opzioni valide sono http e grpc. Il valore predefinito è http "grpc"
"http"
enableApiLogging Abilita la registrazione API per il sidecar Dapr bool
Enabled Boolean che indica se l'auto lato Dapr è abilitata bool
httpMaxRequestSize Aumento delle dimensioni massime del corpo della richiesta http e dei server grpc in MB per gestire il caricamento di file di grandi dimensioni. Il valore predefinito è 4 MB. INT
httpReadBufferSize Dapr max size of http header read buffer in KB to handle when invio di intestazioni multi-KB. Il valore predefinito è 65 KB. INT
logLevel Imposta il livello di log per il sidecar Dapr. I valori consentiti sono debug, info, avviso, errore. Il valore predefinito è info. "debug"
"errore"
"info"
"avvisa"

Dati in ingresso

Nome Descrizione Valore
additionalPortMappings Impostazioni per esporre porte aggiuntive nell'app contenitore IngressPortMapping[]
allowInsecure Bool che indica se le connessioni HTTP a sono consentite. Se impostata su false connessioni HTTP vengono reindirizzate automaticamente alle connessioni HTTPS bool
clientCertificateMode Modalità certificato client per l'autenticazione mTLS. Ignora indica che il certificato client viene eliminato dal server durante l'inoltro. Accetta indica che il certificato client viene inoltrato dal server, ma non richiede un certificato client. Richiedi indica che il server richiede un certificato client. "accetta"
"ignora"
"richiede"
corsPolicy Criteri CORS per l'app contenitore CorsPolicy
customDomains associazioni di dominio personalizzate per i nomi host di App contenitore. CustomDomain[]
exposedPort Porta esposta nei contenitori per il traffico TCP da ingresso INT
external Bool che indica se l'app espone un endpoint http esterno bool
ipSecurityRestrictions Regole per limitare l'indirizzo IP in ingresso. IpSecurityRestrictionRule[]
stickySessions Sessioni sticky per la modalità di revisione singola IngressStickySessions
targetPort Porta di destinazione nei contenitori per il traffico da ingresso INT
targetPortHttpScheme Se un'app http è in ascolto su http o https "http"
"https"
Traffico Peso del traffico per le revisioni dell'app TrafficWeight[]
transport Protocollo di trasporto in ingresso "auto"
"http"
"http2"
"tcp"

IngressPortMapping

Nome Descrizione Valore
exposedPort Specifica la porta esposta per la porta di destinazione. Se non specificato, il valore predefinito è la porta di destinazione INT
external Specifica se la porta dell'app è accessibile all'esterno dell'ambiente bool (obbligatorio)
targetPort Specifica il contenitore dell'utente della porta in ascolto int (obbligatorio)

CorsPolicy

Nome Descrizione Valore
allowCredentials Specifica se la risorsa consente le credenziali bool
allowedHeaders Specifica il contenuto per l'intestazione access-control-allow-headers string[]
allowedMethods Specifica il contenuto per l'intestazione access-control-allow-methods string[]
allowedOrigins Specifica il contenuto per l'intestazione access-control-allow-origins string[] (obbligatorio)
esponiheader Specifica il contenuto per l'intestazione access-control-expose-headers string[]
Maxage Specifica il contenuto per l'intestazione access-control-max-age INT

CustomDomain

Nome Descrizione Valore
bindingType Custom Domain tipo di associazione. "Disabilitato"
"SniEnabled"
CertificateId ID risorsa del certificato da associare a questo nome host. Deve esistere nell'ambiente gestito. string
name Nome host. stringa (obbligatoria)

IpSecurityRestrictionRule

Nome Descrizione Valore
azione Consenti o Nega regole per determinare l'indirizzo IP in ingresso. Nota: le regole possono essere costituite solo da ALL Allow o ALL Deny "Consenti"
"Nega" (obbligatorio)
description Descrivere la regola di restrizione IP inviata all'app contenitore. È un campo facoltativo. string
ipAddressRange Notazione CIDR per corrispondere all'indirizzo IP in ingresso stringa (obbligatoria)
name Nome per la regola di restrizione IP. stringa (obbligatoria)

IngressStickySessions

Nome Descrizione Valore
affinity Affinità sessione sticky "nessuno"
"bastone"

TrafficWeight

Nome Descrizione Valore
label Associa un'etichetta di traffico a una revisione string
latestRevision Indica che il peso del traffico appartiene a una revisione stabile più recente bool
revisionName Nome di una revisione string
peso Peso del traffico assegnato a una revisione INT

RegistryCredentials

Nome Descrizione Valore
identity Identità gestita da usare per l'autenticazione con Registro Azure Container. Per le identità assegnate dall'utente, usare l'ID risorsa di identità assegnata dall'utente completo. Per le identità assegnate dal sistema, usare 'system' string
passwordSecretRef Nome del segreto che contiene la password di accesso del Registro di sistema string
server Server registro contenitori string
username Nome utente registro contenitori string

Segreto

Nome Descrizione Valore
identity ID risorsa di un'identità gestita da autenticare con Azure Key Vault o Sistema per usare un'identità assegnata dal sistema. string
keyVaultUrl URL di Azure Key Vault che punta al segreto a cui fa riferimento l'app contenitore. string
name Nome segreto. string
Valore Valore segreto. string

Vincoli:
Valore sensibile. Passare come parametro sicuro.

Servizio

Nome Descrizione Valore
tipo Tipo di servizio Dev ContainerApp stringa (obbligatoria)

Modello

Nome Descrizione Valore
containers Elenco delle definizioni dei contenitori per l'app contenitore. Contenitore[]
initContainers Elenco di contenitori specializzati eseguiti prima dei contenitori di app. InitContainer[]
revisionSuffix Suffisso descrittivo aggiunto al nome della revisione string
scala Ridimensionamento delle proprietà per l'app contenitore. Scalabilità
serviceBinds Elenco dei servizi app contenitore associati all'app ServiceBind[]
terminazioneGracePeriodSeconds La durata facoltativa in secondi dell'istanza dell'app contenitore deve terminare in modo normale. Il valore deve essere intero non negativo. Il valore zero indica l'arresto immediato tramite il segnale di kill (nessuna opportunità di arresto). Se questo valore è nil, verrà usato invece il periodo di tolleranza predefinito. Impostare questo valore più lungo del tempo di pulizia previsto per il processo. Il valore predefinito è 30 secondi. INT
volumes Elenco delle definizioni di volume per l'app contenitore. Volume[]

Contenitore

Nome Descrizione Valore
args Argomenti dei comandi start contenitore. string[]
. Comando start contenitore. string[]
env Variabili di ambiente contenitore. EnvironmentVar[]
image Tag immagine contenitore. string
name Nome contenitore personalizzato. string
probes Elenco dei probe per il contenitore. ContainerAppProbe[]
resources Requisiti delle risorse del contenitore. ContainerResources
volumeMounts Montaggi del volume del contenitore. VolumeMount[]

EnvironmentVar

Nome Descrizione valore
name Nome della variabile di ambiente. string
secretRef Nome del segreto dell'app contenitore da cui eseguire il pull del valore della variabile di ambiente. string
Valore Valore variabile di ambiente non segreto. string

ContainerAppProbe

Nome Descrizione Valore
failureThreshold Errori consecutivi minimi per il probe da considerare non riuscito dopo aver avuto esito positivo. Il valore predefinito è 3. Il valore minimo è 1. Il valore massimo è 10. INT
httpGet HTTPGet specifica la richiesta http da eseguire. ContainerAppProbeHttpGet
initialDelaySeconds Il numero di secondi dopo l'avvio del contenitore prima che vengano avviati i probe di attività. Il valore minimo è 1. Il valore massimo è 60. INT
periodSeconds Frequenza (in secondi) per eseguire il probe. Il valore predefinito è 10 secondi. Il valore minimo è 1. Il valore massimo è 240. INT
successThreshold I successi consecutivi minimi per il probe devono essere considerati riusciti dopo aver avuto esito negativo. Assume il valore predefinito 1. Deve essere 1 per la vita e l'avvio. Il valore minimo è 1. Il valore massimo è 10. INT
tcpSocket TCPSocket specifica un'azione che implica una porta TCP. Hook TCP non ancora supportati. ContainerAppProbeTcpSocket
terminazioneGracePeriodSeconds La durata facoltativa in secondi del pod deve terminare normalmente al termine dell'errore del probe. Il periodo di tolleranza è la durata in secondi dopo che i processi in esecuzione nel pod vengono inviati un segnale di terminazione e il tempo in cui i processi vengono arrestati in modo forcibmente con un segnale di arresto. Impostare questo valore più lungo del tempo di pulizia previsto per il processo. Se questo valore è nil, verrà usata la terminazione del podGracePeriodSeconds. In caso contrario, questo valore esegue l'override del valore fornito dalla specifica del pod. Il valore deve essere intero non negativo. Il valore zero indica l'arresto immediato tramite il segnale di kill (nessuna opportunità di arresto). Si tratta di un campo alfa e richiede l'abilitazione del gate delle funzionalità ProbeTerminationGracePeriod. Il valore massimo è 3600 secondi (1 ora) INT
timeoutSeconds Numero di secondi dopo il timeout del probe. Il valore predefinito è 1 secondo. Il valore minimo è 1. Il valore massimo è 240. INT
tipo Tipo di probe. "Liveness"
"Idoneità"
"Avvio"

ContainerAppProbeHttpGet

Nome Descrizione Valore
host Nome host a cui connettersi, impostazione predefinita all'INDIRIZZO IP del pod. Probabilmente si vuole impostare "Host" in httpHeaders. string
httpHeaders Intestazioni personalizzate da impostare nella richiesta. HTTP consente intestazioni ripetute. ContainerAppProbeHttpGetHttpHeadersItem[]
path Percorso di accesso nel server HTTP. string
port Nome o numero della porta da accedere al contenitore. Il numero deve essere compreso nell'intervallo da 1 a 65535. Il nome deve essere un IANA_SVC_NAME. int (obbligatorio)
scheme Schema da usare per la connessione all'host. Impostazione predefinita su HTTP. "HTTP"
"HTTPS"

ContainerAppProbeHttpGetHttpHeadersItem

Nome Descrizione valore
name Nome del campo di intestazione stringa (obbligatoria)
Valore Valore del campo intestazione stringa (obbligatoria)

ContainerAppProbeTcpSocket

Nome Descrizione Valore
host Facoltativo: nome host a cui connettersi, impostazione predefinita all'INDIRIZZO IP del pod. string
port Numero o nome della porta da accedere al contenitore. Il numero deve essere compreso nell'intervallo da 1 a 65535. Il nome deve essere un IANA_SVC_NAME. int (obbligatorio)

ContainerResources

Nome Descrizione Valore
cpu Cpu richiesta in core, ad esempio 0,5 Specificare un valore decimale come stringa. int o json decimal
memoria Memoria richiesta, ad esempio "250 Mb" string

VolumeMount

Nome Descrizione Valore
mountPath Percorso all'interno del contenitore in cui deve essere montato il volume. Non deve contenere ':'. string
subPath Percorso all'interno del volume da cui deve essere montato il volume del contenitore. Il valore predefinito è "" (radice del volume). string
volumeName Deve corrispondere al nome di un volume. string

InitContainer

Nome Descrizione Valore
args Argomenti del comando di avvio del contenitore. string[]
. Comando start del contenitore. string[]
env Variabili di ambiente del contenitore. EnvironmentVar[]
image Tag immagine contenitore. string
name Nome del contenitore personalizzato. string
resources Requisiti delle risorse del contenitore. ContainerResources
volumeMounts Montaggi del volume del contenitore. VolumeMount[]

Scalabilità

Nome Descrizione Valore
maxReplicas facoltativo. Numero massimo di repliche di contenitori. Il valore predefinito è 10 se non impostato. INT
minReplicas facoltativo. Numero minimo di repliche del contenitore. INT
regole Regole di ridimensionamento. ScaleRule[]

ScaleRule

Nome Descrizione Valore
azureQueue Ridimensionamento basato su code di Azure. QueueScaleRule
custom Regola di scalabilità personalizzata. CustomScaleRule
http Scalabilità basata sulle richieste HTTP. HttpScaleRule
name Nome regola di scalabilità string
tcp Ridimensionamento basato sulle richieste TCP. TcpScaleRule

QueueScaleRule

Nome Descrizione Valore
auth Segreti di autenticazione per la regola di scalabilità della coda. ScaleRuleAuth[]
queueLength Lunghezza coda. INT
queueName Nome coda. string

ScaleRuleAuth

Nome Descrizione Valore
secretRef Nome del segreto da cui eseguire il pull dei parametri di autenticazione. string
triggerParameter Parametro trigger che usa il segreto string

CustomScaleRule

Nome Descrizione Valore
auth Segreti di autenticazione per la regola di scalabilità personalizzata. ScaleRuleAuth[]
metadata Proprietà dei metadati per descrivere la regola di scalabilità personalizzata. CustomScaleRuleMetadata
tipo Tipo della regola di scalabilità personalizzata
ad esempio: azure-servicebus, redis e così via.
string

CustomScaleRuleMetadata

Nome Descrizione Valore
{proprietà personalizzata} string

HttpScaleRule

Nome Descrizione Valore
auth Segreti di autenticazione per la regola di scalabilità personalizzata. ScaleRuleAuth[]
metadata Proprietà dei metadati per descrivere la regola di scalabilità http. HttpScaleRuleMetadata

HttpScaleRuleMetadata

Nome Descrizione Valore
{proprietà personalizzata} string

TcpScaleRule

Nome Descrizione Valore
auth Segreti di autenticazione per la regola di scalabilità tcp. ScaleRuleAuth[]
metadata Proprietà dei metadati per descrivere la regola di scalabilità tcp. TcpScaleRuleMetadata

TcpScaleRuleMetadata

Nome Descrizione Valore
{proprietà personalizzata} string

ServiceBind

Nome Descrizione Valore
clientType Tipo del client da usare per connettersi al servizio string
customdKeys Chiavi personalizzate per personalizzare i valori inseriti nell'app ServiceBindCustomizedKeys
name Nome dell'associazione del servizio string
serviceId ID risorsa del servizio di destinazione string

ServiceBindCustomizedKeys

Nome Descrizione Valore
{proprietà personalizzata} string

Volume

Nome Descrizione Valore
mountOptions Opzioni di montaggio usate durante il montaggio della condivisione file di Azure o della condivisione file NFS di Azure. Deve essere una stringa delimitata da virgole. string
name Nome del volume. string
chiavi private Elenco dei segreti da aggiungere nel volume. Se non vengono forniti segreti, tutti i segreti nella raccolta verranno aggiunti al volume. SecretVolumeItem[]
storageName Nome della risorsa di archiviazione. Non è necessario fornire per EmptyDir e Secret. string
storageType Tipo di archiviazione per il volume. Se non specificato, usare EmptyDir. "AzureFile"
"EmptyDir"
"NfsAzureFile"
"Segreto"

SecretVolumeItem

Nome Descrizione Valore
path Percorso al segreto del progetto. Se non viene specificato alcun percorso, il percorso è predefinito per il nome del segreto elencato in secretRef. string
secretRef Nome del segreto dell'app contenitore da cui eseguire il pull del valore segreto. string