contenitore Microsoft.App App
Definizione di risorsa Bicep
Il tipo di risorsa containerApps può essere distribuito con operazioni destinate a:
- Gruppi di risorse - Vedere i comandi di distribuzione dei 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 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 |
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 |
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 |
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 |
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 |
Crea un ambiente app contenitore esterno con una rete virtuale. |
Crea un ambiente app contenitore interno con una rete virtuale |
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:
- Gruppi di risorse - Vedere i comandi di distribuzione dei 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 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 |
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 |
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 |
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 |
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 |
Crea un ambiente app contenitore esterno con una rete virtuale. |
Crea un ambiente app contenitore interno con una rete virtuale |
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 |
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per