Microsoft.App containerApps

Definice prostředku Bicep

Typ prostředku containerApps je možné nasadit s operacemi, které cílí na:

Seznam změněných vlastností v jednotlivých verzích rozhraní API najdete v protokolu změn.

Formát prostředku

Pokud chcete vytvořit prostředek Microsoft.App/containerApps, přidejte do šablony následující bicep.

resource symbolicname 'Microsoft.App/containerApps@2023-05-01' = {
  name: 'string'
  location: 'string'
  tags: {
    tagName1: 'tagValue1'
    tagName2: 'tagValue2'
  }
  extendedLocation: {
    name: 'string'
    type: 'CustomLocation'
  }
  identity: {
    type: 'string'
    userAssignedIdentities: {}
  }
  managedBy: 'string'
  properties: {
    configuration: {
      activeRevisionsMode: 'string'
      dapr: {
        appId: 'string'
        appPort: int
        appProtocol: 'string'
        enableApiLogging: bool
        enabled: bool
        httpMaxRequestSize: int
        httpReadBufferSize: int
        logLevel: 'string'
      }
      ingress: {
        allowInsecure: bool
        clientCertificateMode: 'string'
        corsPolicy: {
          allowCredentials: bool
          allowedHeaders: [
            'string'
          ]
          allowedMethods: [
            'string'
          ]
          allowedOrigins: [
            'string'
          ]
          exposeHeaders: [
            'string'
          ]
          maxAge: int
        }
        customDomains: [
          {
            bindingType: 'string'
            certificateId: 'string'
            name: 'string'
          }
        ]
        exposedPort: int
        external: bool
        ipSecurityRestrictions: [
          {
            action: 'string'
            description: 'string'
            ipAddressRange: 'string'
            name: 'string'
          }
        ]
        stickySessions: {
          affinity: 'string'
        }
        targetPort: int
        traffic: [
          {
            label: 'string'
            latestRevision: bool
            revisionName: 'string'
            weight: int
          }
        ]
        transport: 'string'
      }
      maxInactiveRevisions: int
      registries: [
        {
          identity: 'string'
          passwordSecretRef: 'string'
          server: 'string'
          username: 'string'
        }
      ]
      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: {}
              type: 'string'
            }
            http: {
              auth: [
                {
                  secretRef: 'string'
                  triggerParameter: 'string'
                }
              ]
              metadata: {}
            }
            name: 'string'
            tcp: {
              auth: [
                {
                  secretRef: 'string'
                  triggerParameter: 'string'
                }
              ]
              metadata: {}
            }
          }
        ]
      }
      serviceBinds: [
        {
          name: 'string'
          serviceId: 'string'
        }
      ]
      terminationGracePeriodSeconds: int
      volumes: [
        {
          mountOptions: 'string'
          name: 'string'
          secrets: [
            {
              path: 'string'
              secretRef: 'string'
            }
          ]
          storageName: 'string'
          storageType: 'string'
        }
      ]
    }
    workloadProfileName: 'string'
  }
}

Hodnoty vlastností

containerApps

Název Description Hodnota
name Název prostředku string (povinné)

Limit počtu znaků: 2–32

Platné znaky:
Malá písmena, číslice a spojovníky.

Začněte písmenem a končite alfanumerickými číslicemi.
location Geografické umístění, ve kterém se nachází prostředek string (povinné)
tags Značky prostředků. Slovník názvů značek a hodnot. Viz Značky v šablonách
extendedLocation Komplexní typ rozšířeného umístění. ExtendedLocation
identity spravované identity pro aplikaci kontejneru pro interakci s dalšími službami Azure bez zachování tajných kódů nebo přihlašovacích údajů v kódu. ManagedServiceIdentity
managedBy Plně kvalifikované ID prostředku, který tento prostředek spravuje. Označuje, jestli je tento prostředek spravovaný jiným prostředkem Azure. Pokud je k dispozici, nasazení v úplném režimu neodstraní prostředek, pokud je odebrán ze šablony, protože ho spravuje jiný prostředek. řetězec
properties Vlastnosti specifické pro prostředek ContainerApp ContainerAppProperties

ExtendedLocation

Název Description Hodnota
name Název rozšířeného umístění. řetězec
typ Typ rozšířeného umístění. CustomLocation

ManagedServiceIdentity

Název Description Hodnota
typ Typ identity spravované služby (kde jsou povolené typy SystemAssigned i UserAssigned). 'Žádný'
'SystemAssigned'
'SystemAssigned,UserAssigned'
UserAssigned (povinné)
userAssignedIdentity Sada identit přiřazených uživatelem přidružených k prostředku. Klíče slovníku userAssignedIdentities budou ID prostředků ARM ve formátu /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Hodnoty slovníku můžou být prázdné objekty ({}) v požadavcích. object

ContainerAppProperties

Název Description Hodnota
konfigurace Vlastnosti konfigurace aplikace kontejneru bez verzí Konfigurace
environmentId ID prostředku prostředí. řetězec
managedEnvironmentId Zastaralé ID prostředku prostředí aplikace kontejneru řetězec
šablona Definice aplikace s verzí aplikace kontejneru Šablona
název_souboru_úlohy Název profilu úlohy pro připnutí pro spouštění aplikací kontejneru řetězec

Konfigurace

Název Description Hodnota
activeRevisionsMode ActiveRevisionsMode řídí způsob zpracování aktivních revizí pro aplikaci kontejneru:
{list} {item} Více: Více revizí může být aktivních. {/item} {item} Jedna: Najednou může být aktivní jenom jedna revize. Váhy revizí nelze v tomto režimu použít. Pokud není zadaná žádná hodnota, jedná se o výchozí hodnotu. {/item} {/list}
"Více"
'Single'
dapr Konfigurace Dapr pro aplikaci kontejneru Dapr
Průniku Konfigurace příchozího přenosu dat. Příchozí přenos dat
maxInactiveRevisions Nepovinný parametr. Maximální počet neaktivních revizí, které může mít aplikace kontejneru. int
Rejstříků Kolekce přihlašovacích údajů privátního registru kontejneru pro kontejnery používané aplikací kontejneru RegistryCredentials[]
Tajemství Kolekce tajných kódů používaných aplikací kontejneru Tajný kód[]
service Container App to be a dev Container App Service Služba

Dapr

Název Description Hodnota
appId Identifikátor aplikace Dapr řetězec
appPort Řekne dapr, na kterém portu vaše aplikace naslouchá. int
appProtocol Řekne Dapr, který protokol vaše aplikace používá. Platné možnosti jsou http a grpc. Výchozí hodnota je http. 'grpc'
'http'
enableApiLogging Povolí protokolování rozhraní API pro sajdkáru Dapr. bool
enabled Logická hodnota označující, jestli je povolené boční auto Dapr bool
httpMaxRequestSize Zvýšení maximální velikosti parametru http a grpc servers v mb pro zpracování nahrávání velkých souborů Výchozí hodnota je 4 MB. int
httpReadBufferSize Maximální velikost vyrovnávací paměti pro čtení hlaviček HTTP v kB dapr, která se má zpracovat při odesílání hlaviček s více kB. Výchozí hodnota je 65 kB. int
Loglevel Nastaví úroveň protokolu pro sajdkáru Dapr. Povolené hodnoty jsou ladění, informace, upozornění, chyba. Výchozí hodnota je informace. 'debug'
'chyba'
'info'
'varovat'

Příchozí přenos dat

Název Description Hodnota
allowInsecure Logická hodnota označující, jestli jsou povolená připojení HTTP k. Pokud je nastavená hodnota false, připojení HTTP se automaticky přesměrují na připojení HTTPS. bool
clientCertificateMode Režim klientského certifikátu pro ověřování mTLS Ignorovat znamená, že server při předávání zahodí klientský certifikát. Accept označuje, že server předává klientský certifikát, ale nevyžaduje klientský certifikát. Vyžadovat označuje, že server vyžaduje klientský certifikát. "přijmout"
"ignorovat"
"vyžadovat"
corsPolicy Zásady CORS pro aplikaci kontejneru CorsPolicy
vlastní domény vazby vlastní domény pro názvy hostitelů aplikací kontejneru. CustomDomain[]
exposedPort Vystavený port v kontejnerech pro provoz TCP z příchozího přenosu dat int
external Logická hodnota označující, jestli aplikace zveřejňuje externí koncový bod HTTP bool
ipSecurityRestrictions Pravidla pro omezení příchozí IP adresy IpSecurityRestrictionRule[]
stickySessions Rychlé relace pro režim jedné revize IngressStickySessions
targetPort Cílový port v kontejnerech pro provoz z příchozího přenosu dat int
Provozu Váhy provozu pro revize aplikace TrafficWeight[]
transport Přenosový protokol příchozího přenosu dat 'auto'
'http'
'http2'
'tcp'

CorsPolicy

Název Description Hodnota
allowCredentials Určuje, jestli prostředek povoluje přihlašovací údaje. bool
allowedHeaders Určuje obsah hlavičky access-control-allow-headers. string[]
allowedMethods Určuje obsah hlavičky access-control-allow-methods. string[]
allowedOrigins Určuje obsah hlavičky access-control-allow-origins. string[] (povinné)
exposeHeaders Určuje obsah hlavičky access-control-expose-headers. string[]
Maxage Určuje obsah hlavičky access-control-max-age. int

CustomDomain

Název Description Hodnota
Bindingtype Custom Domain typ vazby. Zakázáno
'SniEnabled'
id certifikátu ID prostředku certifikátu, který má být svázán s tímto názvem hostitele. Musí existovat ve spravovaném prostředí. řetězec
name Hostname. string (povinné)

IpSecurityRestrictionRule

Název Description Hodnota
action Pravidla povolit nebo odepřít, která určují příchozí IP adresu. Poznámka: Pravidla se můžou skládat pouze z hodnoty ALL Allow nebo ALL Odepřít. 'Povolit'
"Odepřít" (povinné)
description Popište pravidlo omezení IP adres, které se odesílá do aplikace kontejneru. Toto je volitelné pole. řetězec
ipAddressRange Zápis CIDR tak, aby odpovídal příchozí IP adrese string (povinné)
name Název pravidla omezení IP adres. string (povinné)

IngressStickySessions

Název Description Hodnota
spřažení Spřažení relace s jedním prstem 'none'
"sticky"

Váha provozu

Název Description Hodnota
label Přidruží popisek provozu k revizi. řetězec
latestRevision Označuje, že váha provozu patří do nejnovější stabilní revize. bool
název_revize Název revize řetězec
hmotnost Hmotnost provozu přiřazená revizi int

RegistryCredentials

Název Description Hodnota
identity Spravovaná identita, která se použije k ověřování pomocí Azure Container Registry. Pro identity přiřazené uživatelem použijte úplné ID prostředku identity přiřazené uživatelem. Pro identity přiřazené systémem použijte "system". řetězec
hesloSecretRef Název tajného klíče, který obsahuje přihlašovací heslo registru řetězec
server Container Registry Server řetězec
username Uživatelské jméno registru kontejneru řetězec

Tajný kód

Název Description Hodnota
identity ID prostředku spravované identity k ověření pomocí Azure Key Vault nebo k použití identity přiřazené systémem. řetězec
keyVaultUrl Adresa URL Key Vault Azure odkazující na tajný klíč, na který odkazuje aplikace kontejneru. řetězec
name Název tajného kódu. řetězec
hodnota Hodnota tajného kódu. řetězec

Služba

Název Description Hodnota
typ Vývoj typu služby ContainerApp string (povinné)

Template (Šablona)

Název Description Hodnota
containers Seznam definic kontejnerů pro aplikaci kontejneru Kontejner[]
kontejnery initContainers Seznam specializovaných kontejnerů, které se spouští před kontejnery aplikací InitContainer[]
přípona revize Uživatelsky popisná přípona připojená k názvu revize řetězec
scale Vlastnosti škálování aplikace kontejneru Škálování
vazby služby Seznam služeb aplikací kontejneru svázaných s aplikací ServiceBind[]
terminationGracePeriodSeconds Volitelné trvání v sekundách, které musí instance aplikace kontejneru řádně ukončit. Hodnota musí být nezáporné celé číslo. Hodnota nula znamená okamžité zastavení prostřednictvím signálu ukončení (bez možnosti vypnutí). Pokud je tato hodnota nil, použije se místo toho výchozí období odkladu. Nastavte tuto hodnotu na delší dobu, než je očekávaná doba čištění pro váš proces. Výchozí hodnota je 30 sekund. int
volumes Seznam definic svazků pro aplikaci kontejneru Hlasitost[]

Kontejner

Název Description Hodnota
args Argumenty příkazu pro spuštění kontejneru string[]
command Příkaz Pro spuštění kontejneru string[]
Env Proměnné prostředí kontejneru. EnvironmentVar[]
image Značka image kontejneru. řetězec
name Název vlastního kontejneru. řetězec
Sondy Seznam sond pro kontejner ContainerAppProbe[]
resources Požadavky na prostředky kontejneru ContainerResources
volumeMounts Připojení svazku kontejneru. VolumeMount[]

EnvironmentVar

Název Description Hodnota
name Název proměnné prostředí. řetězec
secretRef Název tajného klíče aplikace kontejneru, ze kterého se má načíst hodnota proměnné prostředí. řetězec
hodnota Hodnota proměnné prostředí, která není tajná. řetězec

ContainerAppProbe

Název Description Hodnota
failureThreshold Minimální počet po sobě jdoucích selhání sondy, která má být po úspěšném provedení považována za neúspěšnou. Výchozí hodnota je 3. Minimální hodnota je 1. Maximální hodnota je 10. int
httpZískat HTTPGet určuje požadavek HTTP, který se má provést. ContainerAppProbeHttpGet
initialDelaySeconds Počet sekund po spuštění kontejneru, než se spustí sondy aktivity. Minimální hodnota je 1. Maximální hodnota je 60. int
periodSeconds Jak často (v sekundách) se má sonda provádět. Výchozí hodnota je 10 sekund. Minimální hodnota je 1. Maximální hodnota je 240. int
successThreshold Minimální počet po sobě jdoucích úspěchů, aby se sonda po neúspěchu považovala za úspěšnou. Výchozí hodnota je 1. Musí být 1 pro živost a spuštění. Minimální hodnota je 1. Maximální hodnota je 10. int
tcpSocket TCPSocket určuje akci zahrnující port TCP. Volání TCP zatím nejsou podporována. ContainerAppProbetcpSocket
terminationGracePeriodSeconds Volitelná doba trvání v sekundách, po které se pod musí při selhání sondy řádně ukončit. Období odkladu je doba v sekundách po odeslání signálu ukončení procesů spuštěných v podu a doba, kdy jsou procesy vynuceně zastaveny signálem ukončení. Nastavte tuto hodnotu na delší dobu, než je očekávaná doba čištění pro váš proces. Pokud je tato hodnota nil, použije se hodnota terminationGracePeriodSeconds podu. Jinak tato hodnota přepíše hodnotu zadanou specifikací podu. Hodnota musí být nezáporné celé číslo. Hodnota nula znamená okamžité zastavení prostřednictvím signálu ukončení (bez možnosti vypnutí). Toto je pole alfa a vyžaduje povolení brány funkce ProbeTerminationGracePeriod. Maximální hodnota je 3600 sekund (1 hodina). int
timeoutSeconds Počet sekund, po jejichž uplynutí vyprší časový limit sondy Výchozí hodnota je 1 sekunda. Minimální hodnota je 1. Maximální hodnota je 240. int
typ Typ sondy. 'Živost'
'Připravenost'
'Po spuštění'

ContainerAppProbeHttpGet

Název Description Hodnota
Hostitel Název hostitele, ke kterému se chcete připojit, výchozí hodnota je IP adresa podu. Pravděpodobně místo toho budete chtít nastavit "Host" v httpHeaders. řetězec
hlavičky http Vlastní hlavičky, které se mají nastavit v požadavku. Protokol HTTP umožňuje opakované hlavičky. ContainerAppProbeHttpGetHttpHeadersItem[]
program Cesta k přístupu na serveru HTTP. řetězec
port Název nebo číslo portu pro přístup v kontejneru Číslo musí být v rozsahu 1 až 65535. Název musí být IANA_SVC_NAME. int (povinné)
scheme Schéma, které se má použít pro připojení k hostiteli. Výchozí hodnota je HTTP. HTTP
HTTPS

ContainerAppProbeHttpGetHttpHeadersItem

Název Description Hodnota
name Název pole záhlaví string (povinné)
hodnota Hodnota pole záhlaví string (povinné)

ContainerAppProbetcpSocket

Název Description Hodnota
Hostitel Volitelné: Název hostitele, ke kterému se chcete připojit, výchozí hodnota je IP adresa podu. řetězec
port Číslo nebo název portu pro přístup k kontejneru Číslo musí být v rozsahu 1 až 65535. Název musí být IANA_SVC_NAME. int (povinné)

ContainerResources

Název Description Hodnota
Cpu Požadovaný procesor v jádrech, například 0,5 Pokud chcete zadat desetinnou hodnotu, použijte funkci json(). int nebo json decimal
paměť Požadovaná paměť, například "250 MB" řetězec

VolumeMount

Název Description Hodnota
mountPath Cesta v kontejneru, ke kterému se má svazek připojit. Nesmí obsahovat :. řetězec
Podcestu Cesta v rámci svazku, ze kterého má být svazek kontejneru připojený. Výchozí hodnota je "" (kořen svazku). řetězec
volumeName Musí se shodovat s názvem svazku. řetězec

InitContainer

Název Description Hodnota
args Argumenty příkazu spuštění kontejneru string[]
command Příkaz Pro spuštění kontejneru string[]
Env Proměnné prostředí kontejneru. EnvironmentVar[]
image Značka image kontejneru. řetězec
name Název vlastního kontejneru. řetězec
resources Požadavky na prostředky kontejneru. ContainerResources
volumeMounts Připojení svazku kontejneru. VolumeMount[]

Měřítko

Název Description Hodnota
maxReplicas Nepovinný parametr. Maximální počet replik kontejneru. Výchozí hodnota je 10, pokud není nastavená. int
minReplicas Nepovinný parametr. Minimální počet replik kontejneru int
pravidla Pravidla škálování. ScaleRule[]

ScaleRule

Název Description Hodnota
azureQueue Škálování na základě fronty Azure. QueueScaleRule
vlastní Vlastní pravidlo škálování. CustomScaleRule
HTTP Škálování na základě požadavků HTTP. HttpScaleRule
name Název pravidla škálování řetězec
Tcp Škálování na základě požadavků TCP. TcpScaleRule

QueueScaleRule

Název Description Hodnota
Auth Ověřovací tajné kódy pro pravidlo škálování fronty. ScaleRuleAuth[]
queueLength Délka fronty. int
queueName Název fronty. řetězec

ScaleRuleAuth

Název Description Hodnota
secretRef Název tajného kódu, ze kterého se mají načíst parametry ověřování. řetězec
triggerParameter Parametr triggeru, který používá tajný klíč řetězec

CustomScaleRule

Název Description Hodnota
Auth Ověřovací tajné kódy pro vlastní pravidlo škálování. ScaleRuleAuth[]
zprostředkovatele identity Vlastnosti metadat pro popis vlastního pravidla škálování object
typ Typ vlastního pravidla škálování
např. azure-servicebus, redis atd.
řetězec

HttpScaleRule

Název Description Hodnota
Auth Ověřovací tajné kódy pro vlastní pravidlo škálování. ScaleRuleAuth[]
zprostředkovatele identity Vlastnosti metadat pro popis pravidla škálování http object

TcpScaleRule

Název Description Hodnota
Auth Ověřovací tajné kódy pro pravidlo škálování tcp. ScaleRuleAuth[]
zprostředkovatele identity Vlastnosti metadat pro popis pravidla škálování tcp object

ServiceBind

Název Description Hodnota
name Název vazby služby řetězec
id služby ID prostředku cílové služby řetězec

Svazek

Název Description Hodnota
mountOptions Možnosti připojení použité při připojování souboru AzureFile Musí to být řetězec oddělený čárkami. řetězec
name Název svazku. řetězec
Tajemství Seznam tajných kódů, které se mají přidat do svazku Pokud nejsou k dispozici žádné tajné kódy, budou všechny tajné kódy v kolekci přidány do svazku. SecretVolumeItem[]
storageName Název prostředku úložiště. Není nutné zadávat hodnoty EmptyDir a Secret. řetězec
storageType Typ úložiště pro svazek. Pokud není k dispozici, použijte EmptyDir. AzureFile
'EmptyDir'
'Tajné'

SecretVolumeItem

Název Description Hodnota
program Cesta k promítaní tajného kódu do. Pokud není k dispozici žádná cesta, použije se ve výchozím nastavení název tajného klíče uvedený v secretRef. řetězec
secretRef Název tajného klíče aplikace kontejneru, ze kterého se má načíst hodnota tajného klíče. řetězec

Šablony pro rychlý start

Následující šablony rychlého startu nasadí tento typ prostředku.

Template (Šablona) Description
Vytvoří aplikaci kontejneru a prostředí pomocí registru.

Nasazení do Azure
Vytvořte prostředí aplikace kontejneru se základní aplikací kontejneru z Azure Container Registry. Nasadí také pracovní prostor služby Log Analytics pro ukládání protokolů.
Vytvoří dvě aplikace kontejneru s prostředím aplikace kontejneru.

Nasazení do Azure
Vytvořte prostředí dvou aplikací kontejneru se základní aplikací kontejneru. Nasadí také pracovní prostor služby Log Analytics k ukládání protokolů.
Vytvoří aplikaci kontejneru v prostředí aplikací kontejneru.

Nasazení do Azure
Vytvořte prostředí aplikací kontejneru se základní aplikací kontejneru. Nasadí také pracovní prostor služby Log Analytics k ukládání protokolů.
Vytvoří aplikaci kontejneru s definovaným pravidlem škálování HTTP.

Nasazení do Azure
Vytvořte prostředí aplikací kontejneru se základní aplikací kontejneru, která se škáluje na základě provozu HTTP.
Vytvoří externí prostředí aplikací kontejneru s virtuální sítí.

Nasazení do Azure
Vytvoří externí prostředí aplikací kontejneru s virtuální sítí.
Vytvoří interní prostředí aplikací kontejneru s virtuální sítí.

Nasazení do Azure
Vytvoří interní prostředí aplikací kontejneru s virtuální sítí.

Definice prostředku šablony ARM

Typ prostředku containerApps je možné nasadit s operacemi, které cílí na:

Seznam změněných vlastností v jednotlivých verzích rozhraní API najdete v protokolu změn.

Formát prostředku

Pokud chcete vytvořit prostředek Microsoft.App/containerApps, přidejte do šablony následující kód JSON.

{
  "type": "Microsoft.App/containerApps",
  "apiVersion": "2023-05-01",
  "name": "string",
  "location": "string",
  "tags": {
    "tagName1": "tagValue1",
    "tagName2": "tagValue2"
  },
  "extendedLocation": {
    "name": "string",
    "type": "CustomLocation"
  },
  "identity": {
    "type": "string",
    "userAssignedIdentities": {}
  },
  "managedBy": "string",
  "properties": {
    "configuration": {
      "activeRevisionsMode": "string",
      "dapr": {
        "appId": "string",
        "appPort": "int",
        "appProtocol": "string",
        "enableApiLogging": "bool",
        "enabled": "bool",
        "httpMaxRequestSize": "int",
        "httpReadBufferSize": "int",
        "logLevel": "string"
      },
      "ingress": {
        "allowInsecure": "bool",
        "clientCertificateMode": "string",
        "corsPolicy": {
          "allowCredentials": "bool",
          "allowedHeaders": [ "string" ],
          "allowedMethods": [ "string" ],
          "allowedOrigins": [ "string" ],
          "exposeHeaders": [ "string" ],
          "maxAge": "int"
        },
        "customDomains": [
          {
            "bindingType": "string",
            "certificateId": "string",
            "name": "string"
          }
        ],
        "exposedPort": "int",
        "external": "bool",
        "ipSecurityRestrictions": [
          {
            "action": "string",
            "description": "string",
            "ipAddressRange": "string",
            "name": "string"
          }
        ],
        "stickySessions": {
          "affinity": "string"
        },
        "targetPort": "int",
        "traffic": [
          {
            "label": "string",
            "latestRevision": "bool",
            "revisionName": "string",
            "weight": "int"
          }
        ],
        "transport": "string"
      },
      "maxInactiveRevisions": "int",
      "registries": [
        {
          "identity": "string",
          "passwordSecretRef": "string",
          "server": "string",
          "username": "string"
        }
      ],
      "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": {},
              "type": "string"
            },
            "http": {
              "auth": [
                {
                  "secretRef": "string",
                  "triggerParameter": "string"
                }
              ],
              "metadata": {}
            },
            "name": "string",
            "tcp": {
              "auth": [
                {
                  "secretRef": "string",
                  "triggerParameter": "string"
                }
              ],
              "metadata": {}
            }
          }
        ]
      },
      "serviceBinds": [
        {
          "name": "string",
          "serviceId": "string"
        }
      ],
      "terminationGracePeriodSeconds": "int",
      "volumes": [
        {
          "mountOptions": "string",
          "name": "string",
          "secrets": [
            {
              "path": "string",
              "secretRef": "string"
            }
          ],
          "storageName": "string",
          "storageType": "string"
        }
      ]
    },
    "workloadProfileName": "string"
  }
}

Hodnoty vlastností

kontejnerové aplikace

Název Description Hodnota
typ Typ prostředku 'Microsoft.App/containerApps'
apiVersion Verze rozhraní API prostředku '2023-05-01'
name Název prostředku string (povinné)

Omezení počtu znaků: 2–32

Platné znaky:
Malá písmena, číslice a pomlčky.

Začněte písmenem a končíte alfanumerickými znaky.
location Geografické umístění, kde se prostředek nachází string (povinné)
tags Značky prostředků. Slovník názvů a hodnot značek. Zobrazit značky v šablonách
extendedLocation Komplexní typ rozšířeného umístění. ExtendedLocation
identity spravované identity pro aplikaci kontejneru pro interakci s dalšími službami Azure bez zachování tajných kódů nebo přihlašovacích údajů v kódu. Identita spravované služby
managedBy Plně kvalifikované ID prostředku, který spravuje tento prostředek. Označuje, jestli je tento prostředek spravovaný jiným prostředkem Azure. Pokud je k dispozici, nasazení v úplném režimu neodstraní prostředek, pokud je odebraný ze šablony, protože ho spravuje jiný prostředek. řetězec
properties Vlastnosti specifické pro prostředek ContainerApp Vlastnosti aplikace ContainerApp

ExtendedLocation

Název Description Hodnota
name Název rozšířeného umístění. řetězec
typ Typ rozšířeného umístění. CustomLocation

Identita spravované služby

Název Description Hodnota
typ Typ identity spravované služby (kde jsou povolené typy SystemAssigned i UserAssigned) 'Žádný'
'SystemAssigned'
'SystemAssigned,UserAssigned'
UserAssigned (povinné)
userAssignedIdentity Sada identit přiřazených uživatelem přidružených k prostředku. Klíče slovníku userAssignedIdentities budou ID prostředků ARM ve formátu /subscriptions/{subscriptionId}/resourceGroups/{název_skupiny_prostředků}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Hodnoty slovníku můžou být prázdné objekty ({}) v požadavcích. object

Vlastnosti aplikace ContainerApp

Název Description Hodnota
konfigurace Vlastnosti konfigurace aplikace kontejneru bez verzí Konfigurace
id prostředí ID prostředku prostředí řetězec
managedEnvironmentId Zastaralé ID prostředku prostředí aplikace kontejneru řetězec
šablona Definice aplikace container app s verzí. Šablona
názevprofilu úlohy Název profilu úlohy, který se má připnout pro spouštění aplikací kontejneru. řetězec

Konfigurace

Název Description Hodnota
activeRevisionsMode ActiveRevisionsMode řídí způsob zpracování aktivních revizí pro aplikaci kontejneru:
{list} {item} Více: Může být aktivních více revizí. {/item} {item} Jedna: Najednou může být aktivní jenom jedna revize. Váhy revizí nelze v tomto režimu použít. Pokud není zadaná žádná hodnota, jedná se o výchozí hodnotu. {/item} {/list}
'Více'
'Single'
dapr Konfigurace Dapr pro aplikaci kontejneru Dapr
Průniku Konfigurace příchozího přenosu dat. Příchozí přenos dat
maxInactiveRevisions Nepovinný parametr. Maximální počet neaktivních revizí, které aplikace kontejneru může mít. int
Rejstříků Kolekce přihlašovacích údajů privátního registru kontejneru pro kontejnery používané aplikací kontejneru RegistryCredentials[]
Tajemství Kolekce tajných kódů používaných aplikací kontejneru Tajné[]
service Aplikace kontejneru se má stát vývojovou App Service kontejneru Služba

Dapr

Název Description Hodnota
appId Identifikátor aplikace Dapr řetězec
appPort Řekne Dapr, na kterém portu vaše aplikace naslouchá. int
appProtocol Řekne Dapr, který protokol vaše aplikace používá. Platné možnosti jsou http a grpc. Výchozí hodnota je http. 'grpc'
'http'
enableApiLogging Povolí protokolování rozhraní API pro sajdkáru Dapr. bool
enabled Logická hodnota označující, jestli je povolené boční auto Dapr bool
httpMaxRequestSize Zvýšení maximální velikosti parametru serveru http a grpc v MB pro zpracování nahrávání velkých souborů Výchozí hodnota je 4 MB. int
httpReadBufferSize Maximální velikost vyrovnávací paměti pro čtení hlaviček HTTP v kB dapr, která se má zpracovat při odesílání hlaviček s více kB. Výchozí hodnota je 65 kB. int
Loglevel Nastaví úroveň protokolu pro sajdkáru Dapr. Povolené hodnoty jsou ladění, informace, upozornění, chyba. Výchozí hodnota je informace. 'debug'
'chyba'
'info'
'varovat'

Příchozí přenos dat

Název Description Hodnota
allowInsecure Logická hodnota označující, jestli jsou povolená připojení HTTP k. Pokud je nastavená hodnota false, připojení HTTP se automaticky přesměrují na připojení HTTPS. bool
clientCertificateMode Režim klientského certifikátu pro ověřování mTLS Ignorovat znamená, že server při předávání zahodí klientský certifikát. Přijmout znamená, že server předává klientský certifikát, ale nevyžaduje klientský certifikát. Vyžadovat označuje, že server vyžaduje klientský certifikát. "přijmout"
"ignorovat"
"vyžadovat"
corsPolicy Zásady CORS pro aplikaci typu kontejner CorsPolicy
vlastní domény Vazby vlastní domény pro názvy hostitelů aplikací kontejneru CustomDomain[]
exposedPort Vystavený port v kontejnerech pro provoz TCP z příchozího přenosu dat int
external Logická hodnota označující, jestli aplikace zveřejňuje externí koncový bod HTTP bool
ipSecurityRestrictions Pravidla pro omezení příchozí IP adresy IpSecurityRestrictionRule[]
stickySessions Rychlé relace pro režim jedné revize IngressStickySessions
cílový port Cílový port v kontejnerech pro provoz z příchozího přenosu dat int
Provozu Váhy provozu pro revize aplikace Hmotnost provozu[]
transport Přenosový protokol příchozího přenosu dat 'auto'
'http'
'http2'
'tcp'

CorsPolicy

Název Description Hodnota
allowCredentials Určuje, jestli prostředek umožňuje přihlašovací údaje. bool
allowedHeaders Určuje obsah hlavičky access-control-allow-headers. string[]
allowedMethods Určuje obsah hlavičky access-control-allow-methods. string[]
allowedOrigins Určuje obsah hlavičky access-control-allow-origins. string[] (povinné)
exposeHeaders Určuje obsah hlavičky hlavičky access-control-expose-headers. string[]
Maxage Určuje obsah hlavičky access-control-max-age. int

Vlastní doména

Název Description Hodnota
Bindingtype Custom Domain typ vazby. Zakázáno
'SniEnabled'
ID certifikátu ID prostředku certifikátu, který se má svázat s tímto názvem hostitele. Musí existovat ve spravovaném prostředí. řetězec
name Hostname. string (povinné)

IpSecurityRestrictionRule

Název Description Hodnota
action Pravidla povolit nebo odepřít, která určí příchozí IP adresu. Poznámka: Pravidla se můžou skládat jenom z hodnoty ALL Allow nebo ALL Deny. 'Povolit'
"Odepřít" (povinné)
description Popište pravidlo omezení IP adres, které se odesílá do aplikace kontejneru. Toto je volitelné pole. řetězec
ipAddressRange Notace CIDR pro shodu s příchozí IP adresou string (povinné)
name Název pravidla omezení IP adres. string (povinné)

IngressStickySessions

Název Description Hodnota
spřažení Spřažení relace Jedním prstem 'none' (žádný)
'lepkavé'

Váha provozu

Název Description Hodnota
label Přidruží popisek provozu k revizi. řetězec
latestRevision Označuje, že váha provozu patří do nejnovější stabilní revize. bool
název_revize Název revize řetězec
hmotnost Váha provozu přiřazená revizi int

RegistryCredentials

Název Description Hodnota
identity Spravovaná identita, která se použije k ověřování pomocí Azure Container Registry. Pro identity přiřazené uživatelem použijte úplné ID prostředku identity přiřazené uživatelem. Pro identity přiřazené systémem použijte "system". řetězec
hesloSecretRef Název tajného klíče, který obsahuje přihlašovací heslo registru řetězec
server Container Registry Server řetězec
username Uživatelské jméno registru kontejneru řetězec

Tajný kód

Název Description Hodnota
identity ID prostředku spravované identity k ověření pomocí Azure Key Vault nebo k použití identity přiřazené systémem. řetězec
keyVaultUrl Adresa URL azure Key Vault odkazující na tajný kód, na který odkazuje aplikace kontejneru. řetězec
name Název tajného kódu. řetězec
hodnota Hodnota tajného kódu. řetězec

Služba

Název Description Hodnota
typ Typ služby Dev ContainerApp string (povinné)

Template (Šablona)

Název Description Hodnota
containers Seznam definic kontejnerů pro aplikaci kontejneru Container[]
initContainers Seznam specializovaných kontejnerů, které běží před kontejnery aplikací InitContainer[]
revisionSuffix Uživatelsky přívětivá přípona, která je připojena k názvu revize řetězec
scale Vlastnosti škálování aplikace kontejneru Škálování
serviceBinds Seznam služeb aplikací kontejneru vázaných na aplikaci ServiceBind[]
terminationGracePeriodSeconds Volitelná doba trvání v sekundách, po které musí instance aplikace kontejneru řádně ukončit. Hodnota musí být nezáporné celé číslo. Hodnota nula indikuje okamžité zastavení prostřednictvím signálu kill (bez možnosti vypnutí). Pokud je tato hodnota nil, použije se místo toho výchozí období odkladu. Nastavte tuto hodnotu na delší dobu, než je očekávaná doba čištění procesu. Výchozí hodnota je 30 sekund. int
volumes Seznam definic svazků pro aplikaci kontejneru Hlasitost[]

Kontejner

Název Description Hodnota
args Argumenty příkazu spuštění kontejneru string[]
command Příkaz Pro spuštění kontejneru string[]
Env Proměnné prostředí kontejneru. EnvironmentVar[]
image Značka image kontejneru. řetězec
name Název vlastního kontejneru. řetězec
Sondy Seznam sond pro kontejner ContainerAppProbe[]
resources Požadavky na prostředky kontejneru. ContainerResources
volumeMounts Připojení svazku kontejneru. VolumeMount[]

EnvironmentVar

Název Description Hodnota
name Název proměnné prostředí. řetězec
secretRef Název tajného klíče aplikace kontejneru, ze kterého se má načíst hodnota proměnné prostředí. řetězec
hodnota Hodnota proměnné prostředí, která není tajná. řetězec

ContainerAppProbe

Název Description Hodnota
failureThreshold Minimální počet po sobě jdoucích selhání sondy, které se mají považovat za neúspěšné po úspěšném provedení. Výchozí hodnota je 3. Minimální hodnota je 1. Maximální hodnota je 10. int
httpGet HTTPGet určuje požadavek HTTP, který se má provést. ContainerAppProbeHttpGet
initialDelaySeconds Počet sekund po spuštění kontejneru před zahájením sondy živosti Minimální hodnota je 1. Maximální hodnota je 60. int
periodSeconds Jak často (v sekundách) se má sonda provádět. Výchozí hodnota je 10 sekund. Minimální hodnota je 1. Maximální hodnota je 240. int
successThreshold Minimální počet po sobě jdoucích úspěchů, aby se sonda po neúspěchu považovala za úspěšnou. Výchozí hodnota je 1. Aby bylo možné spustit a spustit, musí být 1. Minimální hodnota je 1. Maximální hodnota je 10. int
tcpSocket TCPSocket určuje akci zahrnující port TCP. Připojení TCP zatím není podporováno. ContainerAppProbeTcpSocket
terminationGracePeriodSeconds Volitelná doba trvání v sekundách, po které se pod musí řádně ukončit při selhání sondy. Období odkladu je doba v sekundách od odeslání signálu ukončení procesů spuštěných v podu a doba, kdy jsou procesy vynuceně zastaveny signálem ukončení. Nastavte tuto hodnotu na delší dobu, než je očekávaná doba čištění procesu. Pokud je tato hodnota nil, použije se ukončenígracePeriodSeconds podu. V opačném případě tato hodnota přepíše hodnotu zadanou specifikací podu. Hodnota musí být nezáporné celé číslo. Hodnota nula indikuje okamžité zastavení prostřednictvím signálu kill (bez možnosti vypnutí). Toto je pole alfa a vyžaduje povolení brány funkce ProbeTerminationGracePeriod. Maximální hodnota je 3600 sekund (1 hodina) int
timeoutSeconds Počet sekund, po jejichž uplynutí vyprší časový limit sondy. Výchozí hodnota je 1 sekunda. Minimální hodnota je 1. Maximální hodnota je 240. int
typ Typ sondy. 'Živost'
'Připravenost'
'Po spuštění'

ContainerAppProbeHttpGet

Název Description Hodnota
Hostitel Název hostitele, ke kterému se chcete připojit, se ve výchozím nastavení používá IP adresa podu. Pravděpodobně budete chtít nastavit "Host" v httpHeaders místo toho. řetězec
httpHeaders Vlastní hlavičky, které se mají nastavit v požadavku. HTTP umožňuje opakované hlavičky. ContainerAppProbeHttpGetHttpHeadersItem[]
program Cesta k přístupu na serveru HTTP. řetězec
port Název nebo číslo portu pro přístup k kontejneru Číslo musí být v rozsahu 1 až 65535. Název musí být IANA_SVC_NAME. int (povinné)
scheme Schéma, které se má použít pro připojení k hostiteli Výchozí hodnota je HTTP. 'HTTP'
HTTPS

ContainerAppProbeHttpGetHttpHeadersItem

Název Description Hodnota
name Název pole záhlaví string (povinné)
hodnota Hodnota pole záhlaví string (povinné)

ContainerAppProbetcpSocket

Název Description Hodnota
Hostitel Volitelné: Název hostitele, ke kterému se chcete připojit, výchozí hodnota je IP adresa podu. řetězec
port Číslo nebo název portu pro přístup k kontejneru Číslo musí být v rozsahu 1 až 65535. Název musí být IANA_SVC_NAME. int (povinné)

ContainerResources

Název Description Hodnota
Cpu Požadovaný procesor v jádrech, např. 0,5 Pokud chcete zadat desetinnou hodnotu, použijte funkci json(). int nebo json decimal
paměť Požadovaná paměť, například 250 MB řetězec

VolumeMount

Název Description Hodnota
mountPath Cesta v rámci kontejneru, ke kterému se má svazek připojit. Nesmí obsahovat :. řetězec
Podcestu Cesta v rámci svazku, ze kterého se má svazek kontejneru připojit. Výchozí hodnota je "" (kořen svazku). řetězec
název_svazku Musí se shodovat s názvem svazku. řetězec

Kontejner InitContainer

Název Description Hodnota
args Argumenty příkazu pro spuštění kontejneru string[]
command Příkaz Pro spuštění kontejneru string[]
Env Proměnné prostředí kontejneru. EnvironmentVar[]
image Značka image kontejneru. řetězec
name Název vlastního kontejneru. řetězec
resources Požadavky na prostředky kontejneru ContainerResources
volumeMounts Připojení svazku kontejneru. VolumeMount[]

Měřítko

Název Description Hodnota
maxReplicas Nepovinný parametr. Maximální počet replik kontejneru Výchozí hodnota je 10, pokud není nastavená. int
minReplicas Nepovinný parametr. Minimální počet replik kontejneru int
pravidla Pravidla škálování. ScaleRule[]

Pravidla škálování

Název Description Hodnota
azureQueue Škálování na základě fronty Azure. Pravidla pro škálování fronty
vlastní Vlastní pravidlo škálování CustomScaleRule
HTTP Škálování na základě požadavků HTTP. HttpScaleRule
name Název pravidla škálování řetězec
Tcp Škálování na základě požadavků TCP. TcpScaleRule

Pravidla pro škálování fronty

Název Description Hodnota
Auth Ověřovací tajné kódy pro pravidlo škálování fronty. ScaleRuleAuth[]
frontaLength Délka fronty. int
název_fronty Název fronty. řetězec

ScaleRuleAuth

Název Description Hodnota
secretRef Název tajného kódu, ze kterého se mají vyžádat parametry ověřování. řetězec
triggerParameter Parametr triggeru, který používá tajný kód řetězec

CustomScaleRule

Název Description Hodnota
Auth Ověřovací tajné kódy pro vlastní pravidlo škálování. ScaleRuleAuth[]
zprostředkovatele identity Vlastnosti metadat pro popis vlastního pravidla škálování object
typ Typ vlastního pravidla škálování
např. azure-servicebus, redis atd.
řetězec

HttpScaleRule

Název Description Hodnota
Auth Ověřovací tajné kódy pro vlastní pravidlo škálování. ScaleRuleAuth[]
zprostředkovatele identity Vlastnosti metadat, které popisují pravidlo škálování HTTP. object

TcpScaleRule

Název Description Hodnota
Auth Tajné kódy ověřování pro pravidlo škálování protokolu TCP. ScaleRuleAuth[]
zprostředkovatele identity Vlastnosti metadat, které popisují pravidlo škálování protokolu TCP. object

ServiceBind

Název Description Hodnota
name Název vazby služby řetězec
ID služby ID prostředku cílové služby řetězec

Svazek

Název Description Hodnota
mountOptions Možnosti připojení použité při připojování souboru AzureFile. Musí to být řetězec oddělený čárkami. řetězec
name Název svazku. řetězec
Tajemství Seznam tajných kódů, které se mají přidat do svazku Pokud nejsou k dispozici žádné tajné kódy, přidají se do svazku všechny tajné kódy v kolekci. SecretVolumeItem[]
název_úložiště Název prostředku úložiště. Není nutné zadávat hodnoty EmptyDir a Secret. řetězec
typ úložiště Typ úložiště pro svazek. Pokud není zadaný, použijte EmptyDir. AzureFile
'EmptyDir'
'Tajné'

SecretVolumeItem

Název Description Hodnota
program Cesta k promítaní tajného kódu. Pokud není k dispozici žádná cesta, výchozí cesta bude název tajného kódu uvedený v secretRef. řetězec
secretRef Název tajného kódu aplikace kontejneru, ze kterého se má načíst hodnota tajného klíče. řetězec

Šablony pro rychlý start

Následující šablony pro rychlý start nasadí tento typ prostředku.

Template (Šablona) Description
Vytvoří aplikaci kontejneru a prostředí pomocí registru.

Nasazení do Azure
Vytvořte prostředí aplikací kontejneru se základní aplikací kontejneru ze Azure Container Registry. Nasadí také pracovní prostor služby Log Analytics k ukládání protokolů.
Vytvoří dvě aplikace kontejneru s prostředím aplikací kontejneru.

Nasazení do Azure
Vytvořte prostředí dvou aplikací kontejneru se základní aplikací kontejneru. Nasadí také pracovní prostor služby Log Analytics k ukládání protokolů.
Vytvoří aplikaci kontejneru v prostředí aplikací kontejneru.

Nasazení do Azure
Vytvořte prostředí aplikací kontejneru se základní aplikací kontejneru. Nasadí také pracovní prostor služby Log Analytics k ukládání protokolů.
Vytvoří aplikaci kontejneru s definovaným pravidlem škálování HTTP.

Nasazení do Azure
Vytvořte prostředí aplikací kontejneru se základní aplikací kontejneru, která se škáluje na základě provozu HTTP.
Vytvoří externí prostředí aplikací kontejneru s virtuální sítí.

Nasazení do Azure
Vytvoří externí prostředí aplikací kontejneru s virtuální sítí.
Vytvoří interní prostředí aplikací kontejneru s virtuální sítí.

Nasazení do Azure
Vytvoří interní prostředí aplikací kontejneru s virtuální sítí.

Definice prostředku Terraform (poskytovatel AzAPI)

Typ prostředku containerApps je možné nasadit s operacemi, které cílí na:

  • Skupiny prostředků

Seznam změněných vlastností v jednotlivých verzích rozhraní API najdete v protokolu změn.

Formát prostředku

Pokud chcete vytvořit prostředek Microsoft.App/containerApps, přidejte do šablony následující Terraform.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.App/containerApps@2023-05-01"
  name = "string"
  location = "string"
  parent_id = "string"
  tags = {
    tagName1 = "tagValue1"
    tagName2 = "tagValue2"
  }
  identity {
    type = "string"
    identity_ids = []
  }
  body = jsonencode({
    properties = {
      configuration = {
        activeRevisionsMode = "string"
        dapr = {
          appId = "string"
          appPort = int
          appProtocol = "string"
          enableApiLogging = bool
          enabled = bool
          httpMaxRequestSize = int
          httpReadBufferSize = int
          logLevel = "string"
        }
        ingress = {
          allowInsecure = bool
          clientCertificateMode = "string"
          corsPolicy = {
            allowCredentials = bool
            allowedHeaders = [
              "string"
            ]
            allowedMethods = [
              "string"
            ]
            allowedOrigins = [
              "string"
            ]
            exposeHeaders = [
              "string"
            ]
            maxAge = int
          }
          customDomains = [
            {
              bindingType = "string"
              certificateId = "string"
              name = "string"
            }
          ]
          exposedPort = int
          external = bool
          ipSecurityRestrictions = [
            {
              action = "string"
              description = "string"
              ipAddressRange = "string"
              name = "string"
            }
          ]
          stickySessions = {
            affinity = "string"
          }
          targetPort = int
          traffic = [
            {
              label = "string"
              latestRevision = bool
              revisionName = "string"
              weight = int
            }
          ]
          transport = "string"
        }
        maxInactiveRevisions = int
        registries = [
          {
            identity = "string"
            passwordSecretRef = "string"
            server = "string"
            username = "string"
          }
        ]
        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 = {}
                type = "string"
              }
              http = {
                auth = [
                  {
                    secretRef = "string"
                    triggerParameter = "string"
                  }
                ]
                metadata = {}
              }
              name = "string"
              tcp = {
                auth = [
                  {
                    secretRef = "string"
                    triggerParameter = "string"
                  }
                ]
                metadata = {}
              }
            }
          ]
        }
        serviceBinds = [
          {
            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"
  })
}

Hodnoty vlastností

kontejnerové aplikace

Název Description Hodnota
typ Typ prostředku "Microsoft.App/containerApps@2023-05-01"
name Název prostředku string (povinné)

Omezení počtu znaků: 2–32

Platné znaky:
Malá písmena, číslice a pomlčky.

Začněte písmenem a končíte alfanumerickými znaky.
location Geografické umístění, kde se prostředek nachází string (povinné)
parent_id K nasazení do skupiny prostředků použijte ID této skupiny prostředků. string (povinné)
tags Značky prostředků. Slovník názvů a hodnot značek.
extendedLocation Komplexní typ rozšířeného umístění. ExtendedLocation
identity spravované identity pro aplikaci kontejneru pro interakci s dalšími službami Azure bez zachování tajných kódů nebo přihlašovacích údajů v kódu. Identita spravované služby
managedBy Plně kvalifikované ID prostředku, který spravuje tento prostředek. Označuje, jestli je tento prostředek spravovaný jiným prostředkem Azure. Pokud je k dispozici, nasazení v úplném režimu neodstraní prostředek, pokud je odebraný ze šablony, protože ho spravuje jiný prostředek. řetězec
properties Vlastnosti specifické pro prostředek ContainerApp Vlastnosti aplikace ContainerApp

ExtendedLocation

Název Description Hodnota
name Název rozšířeného umístění. řetězec
typ Typ rozšířeného umístění. "CustomLocation"

Identita spravované služby

Název Description Hodnota
typ Typ identity spravované služby (kde jsou povolené typy SystemAssigned i UserAssigned) "SystemAssigned"
"SystemAssigned,UserAssigned"
"UserAssigned" (povinné)
identity_ids Sada identit přiřazených uživatelem přidružených k prostředku. Klíče slovníku userAssignedIdentities budou ID prostředků ARM ve formátu /subscriptions/{subscriptionId}/resourceGroups/{název_skupiny_prostředků}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Hodnoty slovníku můžou být prázdné objekty ({}) v požadavcích. Pole ID identit uživatelů

Vlastnosti aplikace ContainerApp

Název Description Hodnota
konfigurace Vlastnosti konfigurace aplikace kontejneru bez verzí Konfigurace
environmentId ID prostředku prostředí. řetězec
managedEnvironmentId Zastaralé ID prostředku prostředí aplikace kontejneru řetězec
šablona Definice aplikace s verzí aplikace kontejneru Šablona
název_souboru_úlohy Název profilu úlohy pro připnutí pro spouštění aplikací kontejneru řetězec

Konfigurace

Název Description Hodnota
activeRevisionsMode ActiveRevisionsMode řídí způsob zpracování aktivních revizí pro aplikaci kontejneru:
{list} {item} Více: Více revizí může být aktivních. {/item} {item} Jedna: Najednou může být aktivní jenom jedna revize. Váhy revizí nelze v tomto režimu použít. Pokud není zadaná žádná hodnota, jedná se o výchozí hodnotu. {/item} {/list}
"Více"
"Single"
dapr Konfigurace Dapr pro aplikaci kontejneru Dapr
Průniku Konfigurace příchozího přenosu dat. Příchozí přenos dat
maxInactiveRevisions Nepovinný parametr. Maximální počet neaktivních revizí, které může mít aplikace kontejneru. int
Rejstříků Kolekce přihlašovacích údajů privátního registru kontejneru pro kontejnery používané aplikací kontejneru RegistryCredentials[]
Tajemství Kolekce tajných kódů používaných aplikací kontejneru Tajný kód[]
service Container App to be a dev Container App Service Služba

Dapr

Název Description Hodnota
appId Identifikátor aplikace Dapr řetězec
appPort Řekne dapr, na kterém portu vaše aplikace naslouchá. int
appProtocol Řekne Dapr, který protokol vaše aplikace používá. Platné možnosti jsou http a grpc. Výchozí hodnota je http. "grpc"
"http"
enableApiLogging Povolí protokolování rozhraní API pro sajdkáru Dapr. bool
enabled Logická hodnota označující, jestli je povolené boční auto Dapr bool
httpMaxRequestSize Zvýšení maximální velikosti parametru http a grpc servers v mb pro zpracování nahrávání velkých souborů Výchozí hodnota je 4 MB. int
httpReadBufferSize Maximální velikost vyrovnávací paměti pro čtení hlaviček HTTP v kB dapr, která se má zpracovat při odesílání hlaviček s více kB. Výchozí hodnota je 65 kB. int
Loglevel Nastaví úroveň protokolu pro sajdkáru Dapr. Povolené hodnoty jsou ladění, informace, upozornění, chyba. Výchozí hodnota je informace. "debug"
"error" (chyba)
"info"
"varovat"

Příchozí přenos dat

Název Description Hodnota
allowInsecure Logická hodnota označující, jestli jsou povolená připojení HTTP k. Pokud je nastavená hodnota false, připojení HTTP se automaticky přesměrují na připojení HTTPS. bool
clientCertificateMode Režim klientského certifikátu pro ověřování mTLS Ignorovat znamená, že server při předávání zahodí klientský certifikát. Accept označuje, že server předává klientský certifikát, ale nevyžaduje klientský certifikát. Vyžadovat označuje, že server vyžaduje klientský certifikát. "accept" (přijmout)
"ignorovat"
"vyžadovat"
corsPolicy Zásady CORS pro aplikaci kontejneru CorsPolicy
vlastní domény vazby vlastní domény pro názvy hostitelů aplikací kontejneru. CustomDomain[]
exposedPort Vystavený port v kontejnerech pro provoz TCP z příchozího přenosu dat int
external Logická hodnota označující, jestli aplikace zveřejňuje externí koncový bod HTTP bool
ipSecurityRestrictions Pravidla pro omezení příchozí IP adresy IpSecurityRestrictionRule[]
stickySessions Rychlé relace pro režim jedné revize IngressStickySessions
targetPort Cílový port v kontejnerech pro provoz z příchozího přenosu dat int
Provozu Váhy provozu pro revize aplikace TrafficWeight[]
transport Přenosový protokol příchozího přenosu dat "auto"
"http"
"http2"
"tcp"

CorsPolicy

Název Description Hodnota
allowCredentials Určuje, jestli prostředek povoluje přihlašovací údaje. bool
allowedHeaders Určuje obsah hlavičky access-control-allow-headers. string[]
allowedMethods Určuje obsah hlavičky access-control-allow-methods. string[]
allowedOrigins Určuje obsah hlavičky access-control-allow-origins. string[] (povinné)
exposeHeaders Určuje obsah hlavičky access-control-expose-headers. string[]
Maxage Určuje obsah hlavičky access-control-max-age. int

CustomDomain

Název Description Hodnota
Bindingtype Custom Domain typ vazby. "Zakázáno"
"SniEnabled"
id certifikátu ID prostředku certifikátu, který má být svázán s tímto názvem hostitele. Musí existovat ve spravovaném prostředí. řetězec
name Hostname. string (povinné)

IpSecurityRestrictionRule

Název Description Hodnota
action Pravidla povolit nebo odepřít, která určují příchozí IP adresu. Poznámka: Pravidla se můžou skládat pouze z hodnoty ALL Allow nebo ALL Odepřít. "Povolit"
"Odepřít" (povinné)
description Popište pravidlo omezení IP adres, které se odesílá do aplikace kontejneru. Toto je volitelné pole. řetězec
ipAddressRange Zápis CIDR tak, aby odpovídal příchozí IP adrese string (povinné)
name Název pravidla omezení IP adres. string (povinné)

IngressStickySessions

Název Description Hodnota
spřažení Spřažení relace s jedním prstem "none"
"sticky"

Váha provozu

Název Description Hodnota
label Přidruží popisek provozu k revizi. řetězec
latestRevision Označuje, že váha provozu patří do nejnovější stabilní revize. bool
název_revize Název revize řetězec
hmotnost Váha provozu přiřazená revizi int

Přihlašovací údaje registru

Název Description Hodnota
identity Spravovaná identita, která se použije k ověřování pomocí Azure Container Registry. U identit přiřazených uživatelem použijte úplné ID prostředku identity přiřazené uživatelem. Pro identity přiřazené systémem použijte "system". řetězec
hesloSecretRef Název tajného klíče, který obsahuje přihlašovací heslo registru řetězec
server Container Registry Server řetězec
username Uživatelské jméno registru kontejneru řetězec

Tajný kód

Název Description Hodnota
identity ID prostředku spravované identity k ověření pomocí Azure Key Vault nebo k použití identity přiřazené systémem. řetězec
keyVaultUrl Adresa URL Key Vault Azure odkazující na tajný klíč, na který odkazuje aplikace kontejneru. řetězec
name Název tajného kódu. řetězec
hodnota Hodnota tajného kódu. řetězec

Služba

Název Description Hodnota
typ Vývoj typu služby ContainerApp string (povinné)

Template (Šablona)

Název Description Hodnota
containers Seznam definic kontejnerů pro aplikaci kontejneru Kontejner[]
kontejnery initContainers Seznam specializovaných kontejnerů, které se spouští před kontejnery aplikací InitContainer[]
přípona revize Uživatelsky popisná přípona připojená k názvu revize řetězec
scale Vlastnosti škálování aplikace kontejneru Škálování
vazby služby Seznam služeb aplikací kontejneru svázaných s aplikací ServiceBind[]
terminationGracePeriodSeconds Volitelné trvání v sekundách, které musí instance aplikace kontejneru řádně ukončit. Hodnota musí být nezáporné celé číslo. Hodnota nula znamená okamžité zastavení prostřednictvím signálu ukončení (bez možnosti vypnutí). Pokud je tato hodnota nil, použije se místo toho výchozí období odkladu. Nastavte tuto hodnotu na delší dobu, než je očekávaná doba čištění pro váš proces. Výchozí hodnota je 30 sekund. int
volumes Seznam definic svazků pro aplikaci kontejneru Hlasitost[]

Kontejner

Název Description Hodnota
args Argumenty příkazu pro spuštění kontejneru string[]
command Příkaz Pro spuštění kontejneru string[]
Env Proměnné prostředí kontejneru. EnvironmentVar[]
image Značka image kontejneru. řetězec
name Název vlastního kontejneru. řetězec
Sondy Seznam sond pro kontejner ContainerAppProbe[]
resources Požadavky na prostředky kontejneru ContainerResources
volumeMounts Připojení svazku kontejneru. VolumeMount[]

EnvironmentVar

Název Description Hodnota
name Název proměnné prostředí. řetězec
secretRef Název tajného klíče aplikace kontejneru, ze kterého se má načíst hodnota proměnné prostředí. řetězec
hodnota Hodnota proměnné prostředí, která není tajná. řetězec

ContainerAppProbe

Název Description Hodnota
failureThreshold Minimální počet po sobě jdoucích selhání sondy, která má být po úspěšném provedení považována za neúspěšnou. Výchozí hodnota je 3. Minimální hodnota je 1. Maximální hodnota je 10. int
httpZískat HTTPGet určuje požadavek HTTP, který se má provést. ContainerAppProbeHttpGet
initialDelaySeconds Počet sekund po spuštění kontejneru, než se spustí sondy aktivity. Minimální hodnota je 1. Maximální hodnota je 60. int
periodSeconds Jak často (v sekundách) se má sonda provádět. Výchozí hodnota je 10 sekund. Minimální hodnota je 1. Maximální hodnota je 240. int
successThreshold Minimální počet po sobě jdoucích úspěchů, aby se sonda po neúspěchu považovala za úspěšnou. Výchozí hodnota je 1. Musí být 1 pro živost a spuštění. Minimální hodnota je 1. Maximální hodnota je 10. int
tcpSocket TCPSocket určuje akci zahrnující port TCP. Volání TCP zatím nejsou podporována. ContainerAppProbetcpSocket
terminationGracePeriodSeconds Volitelná doba trvání v sekundách, po které se pod musí při selhání sondy řádně ukončit. Období odkladu je doba v sekundách po odeslání signálu ukončení procesů spuštěných v podu a doba, kdy jsou procesy vynuceně zastaveny signálem ukončení. Nastavte tuto hodnotu na delší dobu, než je očekávaná doba čištění pro váš proces. Pokud je tato hodnota nil, použije se hodnota terminationGracePeriodSeconds podu. Jinak tato hodnota přepíše hodnotu zadanou specifikací podu. Hodnota musí být nezáporné celé číslo. Hodnota nula znamená okamžité zastavení prostřednictvím signálu ukončení (bez možnosti vypnutí). Toto je pole alfa a vyžaduje povolení brány funkce ProbeTerminationGracePeriod. Maximální hodnota je 3600 sekund (1 hodina). int
timeoutSeconds Počet sekund, po jejichž uplynutí vyprší časový limit sondy Výchozí hodnota je 1 sekunda. Minimální hodnota je 1. Maximální hodnota je 240. int
typ Typ sondy. "Živost"
"Připravenost"
"Po spuštění"

ContainerAppProbeHttpGet

Název Description Hodnota
Hostitel Název hostitele, ke kterému se chcete připojit, výchozí hodnota je IP adresa podu. Pravděpodobně místo toho budete chtít nastavit "Host" v httpHeaders. řetězec
hlavičky http Vlastní hlavičky, které se mají nastavit v požadavku. Protokol HTTP umožňuje opakované hlavičky. ContainerAppProbeHttpGetHttpHeadersItem[]
program Cesta k přístupu na serveru HTTP. řetězec
port Název nebo číslo portu pro přístup v kontejneru Číslo musí být v rozsahu 1 až 65535. Název musí být IANA_SVC_NAME. int (povinné)
scheme Schéma, které se má použít pro připojení k hostiteli. Výchozí hodnota je HTTP. "HTTP"
"HTTPS"

ContainerAppProbeHttpGetHttpHeadersItem

Název Description Hodnota
name Název pole záhlaví string (povinné)
hodnota Hodnota pole záhlaví string (povinné)

ContainerAppProbeTcpSocket

Název Description Hodnota
Hostitel Volitelné: Název hostitele, ke kterému se chcete připojit, výchozí hodnota je IP adresa podu. řetězec
port Číslo nebo název portu pro přístup k kontejneru Číslo musí být v rozsahu 1 až 65535. Název musí být IANA_SVC_NAME. int (povinné)

ContainerResources

Název Description Hodnota
Cpu Požadovaný procesor v jádrech, například 0,5: Zadejte desetinnou hodnotu jako řetězec. int nebo json decimal
paměť Požadovaná paměť, například "250 MB" řetězec

VolumeMount

Název Description Hodnota
mountPath Cesta v kontejneru, ke kterému se má svazek připojit. Nesmí obsahovat :. řetězec
Podcestu Cesta v rámci svazku, ze kterého má být svazek kontejneru připojený. Výchozí hodnota je "" (kořen svazku). řetězec
volumeName Musí se shodovat s názvem svazku. řetězec

InitContainer

Název Description Hodnota
args Argumenty příkazu spuštění kontejneru string[]
command Příkaz Pro spuštění kontejneru string[]
Env Proměnné prostředí kontejneru. EnvironmentVar[]
image Značka image kontejneru. řetězec
name Název vlastního kontejneru. řetězec
resources Požadavky na prostředky kontejneru. ContainerResources
volumeMounts Připojení svazku kontejneru. VolumeMount[]

Měřítko

Název Description Hodnota
maxReplicas Nepovinný parametr. Maximální počet replik kontejneru. Výchozí hodnota je 10, pokud není nastavená. int
minReplicas Nepovinný parametr. Minimální počet replik kontejneru int
pravidla Pravidla škálování. ScaleRule[]

ScaleRule

Název Description Hodnota
azureQueue Škálování na základě fronty Azure. QueueScaleRule
vlastní Vlastní pravidlo škálování. CustomScaleRule
HTTP Škálování na základě požadavků HTTP. HttpScaleRule
name Název pravidla škálování řetězec
Tcp Škálování na základě požadavků TCP. TcpScaleRule

QueueScaleRule

Název Description Hodnota
Auth Ověřovací tajné kódy pro pravidlo škálování fronty. ScaleRuleAuth[]
queueLength Délka fronty. int
queueName Název fronty. řetězec

ScaleRuleAuth

Název Description Hodnota
secretRef Název tajného kódu, ze kterého se mají načíst parametry ověřování. řetězec
triggerParameter Parametr triggeru, který používá tajný klíč řetězec

CustomScaleRule

Název Description Hodnota
Auth Ověřovací tajné kódy pro vlastní pravidlo škálování. ScaleRuleAuth[]
zprostředkovatele identity Vlastnosti metadat pro popis vlastního pravidla škálování object
typ Typ vlastního pravidla škálování
např. azure-servicebus, redis atd.
řetězec

HttpScaleRule

Název Description Hodnota
Auth Ověřovací tajné kódy pro vlastní pravidlo škálování. ScaleRuleAuth[]
zprostředkovatele identity Vlastnosti metadat pro popis pravidla škálování http object

TcpScaleRule

Název Description Hodnota
Auth Ověřovací tajné kódy pro pravidlo škálování tcp. ScaleRuleAuth[]
zprostředkovatele identity Vlastnosti metadat pro popis pravidla škálování tcp object

ServiceBind

Název Description Hodnota
name Název vazby služby řetězec
id služby ID prostředku cílové služby řetězec

Svazek

Název Description Hodnota
mountOptions Možnosti připojení použité při připojování souboru AzureFile Musí to být řetězec oddělený čárkami. řetězec
name Název svazku. řetězec
Tajemství Seznam tajných kódů, které se mají přidat do svazku Pokud nejsou k dispozici žádné tajné kódy, budou všechny tajné kódy v kolekci přidány do svazku. SecretVolumeItem[]
storageName Název prostředku úložiště. Není nutné zadávat hodnoty EmptyDir a Secret. řetězec
storageType Typ úložiště pro svazek. Pokud není k dispozici, použijte EmptyDir. "AzureFile"
"EmptyDir"
"Tajný kód"

SecretVolumeItem

Název Description Hodnota
program Cesta k promítaní tajného kódu. Pokud není k dispozici žádná cesta, výchozí cesta bude název tajného kódu uvedený v secretRef. řetězec
secretRef Název tajného kódu aplikace kontejneru, ze kterého se má načíst hodnota tajného klíče. řetězec