Dela via


Microsoft.App containerApps

Bicep-resursdefinition

Resurstypen containerApps kan distribueras med åtgärder som mål:

En lista över ändrade egenskaper i varje API-version finns i ändringsloggen.

Resursformat

Om du vill skapa en Microsoft.App/containerApps resurs lägger du till följande Bicep i mallen.

resource symbolicname 'Microsoft.App/containerApps@2024-03-01' = {
  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
        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: [
        {
          name: 'string'
          serviceId: 'string'
        }
      ]
      terminationGracePeriodSeconds: int
      volumes: [
        {
          mountOptions: 'string'
          name: 'string'
          secrets: [
            {
              path: 'string'
              secretRef: 'string'
            }
          ]
          storageName: 'string'
          storageType: 'string'
        }
      ]
    }
    workloadProfileName: 'string'
  }
}

Egenskapsvärden

containerApps

Namn Beskrivning Värde
Namn Resursnamnet sträng (krävs)

Teckengräns: 2–32

Giltiga tecken:
Gemener, siffror och bindestreck..

Börja med bokstav och slut med alfanumeriskt.
plats Den geo-plats där resursen finns sträng (krävs)
Taggar Resurstaggar. Ordlista med taggnamn och värden. Se taggar i mallar
extendedLocation Den komplexa typen av utökad plats. ExtendedLocation
identitet hanterade identiteter för containerappen för att interagera med andra Azure-tjänster utan att ha några hemligheter eller autentiseringsuppgifter i koden. ManagedServiceIdentity
managedBy Det fullständigt kvalificerade resurs-ID:t för resursen som hanterar den här resursen. Anger om den här resursen hanteras av en annan Azure-resurs. Om detta finns tar distributionen i fullständigt läge inte bort resursen om den tas bort från mallen eftersom den hanteras av en annan resurs. sträng
Egenskaper Egenskaper för ContainerApp-resurs ContainerAppProperties

ExtendedLocation

Namn Beskrivning Värde
Namn Namnet på den utökade platsen. sträng
typ Typ av utökad plats. "CustomLocation"

ManagedServiceIdentity

Namn Beskrivning Värde
typ Typ av hanterad tjänstidentitet (där både SystemAssigned- och UserAssigned-typer tillåts). "Ingen"
"SystemAssigned"
"SystemAssigned,UserAssigned"
"UserAssigned" (krävs)
userAssignedIdentities Uppsättningen användartilldelade identiteter som är associerade med resursen. Ordlistenycklarna userAssignedIdentities är ARM-resurs-ID:er i formuläret: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Ordlistevärdena kan vara tomma objekt ({}) i begäranden. UserAssignedIdentiteter

UserAssignedIdentiteter

Namn Beskrivning Värde
{anpassad egenskap} UserAssignedIdentity

UserAssignedIdentity

Det här objektet innehåller inga egenskaper som ska anges under distributionen. Alla egenskaper är ReadOnly.

ContainerAppProperties

Namn Beskrivning Värde
konfiguration Konfigurationsegenskaper för containerappar som inte är versioner. Konfiguration
environmentId Resurs-ID för miljön. sträng
managedEnvironmentId Deprecated. Resurs-ID för containerappens miljö. sträng
mall Programdefinition med containerappversion. mall
workloadProfileName Namn på arbetsbelastningsprofil som ska fästas för körning av containerappar. sträng

Konfiguration

Namn Beskrivning Värde
activeRevisionsMode ActiveRevisionsMode styr hur aktiva revisioner hanteras för containerappen:
{list} {item} Flera: flera revisioner kan vara aktiva. {/item} {item} Enskild: Endast en revision kan vara aktiv i taget. Revisionsvikter kan inte användas i det här läget. Om inget värde anges är detta standardvärdet. {/item} {/list}
"Flera"
"Enkel"
dapr Dapr-konfiguration för containerappen. Dapr
Inträngning Ingresskonfigurationer. Inkommande
maxInactiveRevisions Valfri. Maximalt antal inaktiva revisioner som en containerapp kan ha. Int
Register Samling autentiseringsuppgifter för privata containerregister för containrar som används av containerappen RegistryCredentials[]
Hemligheter Samling hemligheter som används av en containerapp Hemlig[]
tjänst ContainerApp som ska vara en dev Container App Service Service

Dapr

Namn Beskrivning Värde
appId Dapr-programidentifierare sträng
appPort Talar om för Dapr vilken port programmet lyssnar på Int
appProtocol Talar om för Dapr vilket protokoll programmet använder. Giltiga alternativ är http och grpc. Standardvärdet är http "grpc"
"http"
enableApiLogging Aktiverar API-loggning för Dapr-sidovagnen Bool
Aktiverat Booleskt värde som anger om Dapr-sidobilen är aktiverad Bool
httpMaxRequestSize Öka maxstorleken för http- och grpc-serverparametern för begärandetext i MB för att hantera uppladdning av stora filer. Standardvärdet är 4 MB. Int
httpReadBufferSize Dapr maximal storlek på http-sidhuvudläsningsbuffert i KB som ska hanteras när flera KB-huvuden skickas. Standardvärdet är 65 KB. Int
logLevel Anger loggnivån för Dapr-sidovagnen. Tillåtna värden är felsökning, information, varning, fel. Standardvärdet är information. "felsökning"
"fel"
"info"
"varna"

Inträngning

Namn Beskrivning Värde
additionalPortMappings Inställningar för att exponera ytterligare portar i containerappen IngressPortMapping[]
allowInsecure Bool som anger om HTTP-anslutningar till tillåts. Om värdet är inställt på falska HTTP-anslutningar omdirigeras automatiskt till HTTPS-anslutningar Bool
clientCertificateMode Klientcertifikatläge för mTLS-autentisering. Ignorera anger att servern släpper klientcertifikatet vid vidarebefordran. Accept anger att servern vidarebefordrar klientcertifikatet men inte kräver något klientcertifikat. Kräv anger att servern kräver ett klientcertifikat. "acceptera"
"ignorera"
"kräv"
corsPolicy CORS-princip för containerapp CorsPolicy
customDomains anpassade domänbindningar för Container Apps värdnamn. CustomDomain[]
exposedPort Exponerad port i containrar för TCP-trafik från ingress Int
extern Bool som anger om appen exponerar en extern http-slutpunkt Bool
ipSecurityRestrictions Regler för att begränsa inkommande IP-adress. IpSecurityRestrictionRule[]
stickySessions Sticky-sessioner för enkelt revisionsläge IngressStickySessions
targetPort Målport i containrar för trafik från ingress Int
trafik Trafikvikter för appens revisioner TrafficWeight[]
transport Protokoll för inkommande transport "auto"
"http"
"http2"
"tcp"

IngressPortMapping

Namn Beskrivning Värde
exposedPort Anger den exponerade porten för målporten. Om det inte anges är målporten standard Int
extern Anger om appporten är tillgänglig utanför miljön bool (krävs)
targetPort Anger att portanvändarens container lyssnar på int (krävs)

CorsPolicy

Namn Beskrivning Värde
allowCredentials Anger om resursen tillåter autentiseringsuppgifter Bool
allowedHeaders Anger innehållet för rubriken access-control-allow-headers string[]
allowedMethods Anger innehållet för huvudet access-control-allow-methods string[]
allowedOrigins Anger innehållet för huvudet access-control-allow-origins string[] (krävs)
exposeHeaders Anger innehållet för rubriken access-control-expose-headers string[]
maxAge Anger innehållet för rubriken access-control-max-age Int

CustomDomain

Namn Beskrivning Värde
bindingType Bindningstyp för anpassad domän. "Inaktiverad"
"SniEnabled"
certificateId Resurs-ID för certifikatet som ska bindas till det här värdnamnet. Måste finnas i den hanterade miljön. sträng
Namn Värdnamn. sträng (krävs)

IpSecurityRestrictionRule

Namn Beskrivning Värde
handling Tillåt eller neka regler för att fastställa för inkommande IP-adress. Obs! Regler kan bara bestå av ALLA tillåtna eller ALLA neka "Tillåt"
"Neka" (krävs)
beskrivning Beskriv ip-begränsningsregeln som skickas till containerappen. Det här är ett valfritt fält. sträng
ipAddressRange CIDR-notation för att matcha inkommande IP-adress sträng (krävs)
Namn Namn på IP-begränsningsregeln. sträng (krävs)

IngressStickySessions

Namn Beskrivning Värde
samhörighet Fäst sessionstillhörighet "ingen"
"klibbig"

TrafficWeight

Namn Beskrivning Värde
etikett Associerar en trafiketikett med en revision sträng
latestRevision Anger att trafikvikten tillhör en senaste stabil revision Bool
revisionName Namn på en revision sträng
vikt Trafikvikt tilldelad till en revision Int

RegistryCredentials

Namn Beskrivning Värde
identitet En hanterad identitet som ska användas för att autentisera med Azure Container Registry. För användartilldelade identiteter använder du det fullständiga användartilldelade identitetsresurs-ID:t. För systemtilldelade identiteter använder du "system" sträng
passwordSecretRef Namnet på hemligheten som innehåller lösenordet för registerinloggning sträng
server Container Registry Server sträng
användarnamn Användarnamn för containerregister sträng

Hemlig

Namn Beskrivning Värde
identitet Resurs-ID för en hanterad identitet som ska autentiseras med Azure Key Vault eller System för att använda en systemtilldelad identitet. sträng
keyVaultUrl Url för Azure Key Vault som pekar på hemligheten som refereras av containerappen. sträng
Namn Hemligt namn. sträng
värde Hemligt värde. sträng

Begränsningar:
Känsligt värde. Skicka in som en säker parameter.

Tjänst

Namn Beskrivning Värde
typ Dev ContainerApp-tjänsttyp sträng (krävs)

Mall

Namn Beskrivning Värde
Behållare Lista över containerdefinitioner för containerappen. Container[]
initContainers Lista över specialiserade containrar som körs före appcontainrar. InitContainer[]
revisionSuffix Användarvänligt suffix som läggs till i revisionsnamnet sträng
skala Skalningsegenskaper för containerappen. Skala
serviceBinds Lista över containerapptjänster som är bundna till appen ServiceBind[]
terminationGracePeriodSeconds Valfri varaktighet i sekunder containerappinstansen måste avslutas korrekt. Värdet måste vara ett heltal som inte är negativt. Värdet noll anger stopp direkt via avlivningssignalen (ingen möjlighet att stänga av). Om det här värdet är noll används standard respitperioden i stället. Ange det här värdet längre än den förväntade rensningstiden för din process. Standardvärdet är 30 sekunder. Int
Volymer Lista över volymdefinitioner för containerappen. Volume[]

Behållare

Namn Beskrivning Värde
args Kommandoargument för containerstart. string[]
befallning Startkommando för container. string[]
Env Miljövariabler för containrar. EnvironmentVar[]
bild Containeravbildningstagg. sträng
Namn Anpassat containernamn. sträng
Sonder Lista över avsökningar för containern. ContainerAppProbe[]
Resurser Krav för containerresurser. ContainerResources
volumeMounts Containervolymmonteringar. VolumeMount[]

EnvironmentVar

Namn Beskrivning Värde
Namn Miljövariabelnamn. sträng
secretRef Namnet på containerappens hemlighet som miljövariabelvärdet ska hämtas från. sträng
värde Variabelvärde för icke-hemlig miljö. sträng

ContainerAppProbe

Namn Beskrivning Värde
failureThreshold Minsta på varandra följande fel för avsökningen som ska betraktas som misslyckad efter att ha lyckats. Standardvärdet är 3. Minimivärdet är 1. Maximalt värde är 10. Int
httpGet HTTPGet anger http-begäran som ska utföras. ContainerAppProbeHttpGet
initialDelaySeconds Antal sekunder efter att containern har startats innan liveness-avsökningar initieras. Minimivärdet är 1. Maximalt värde är 60. Int
periodSeconds Hur ofta (i sekunder) avsökningen ska utföras. Standardvärdet är 10 sekunder. Minimivärdet är 1. Maximalt värde är 240. Int
successThreshold Minsta lyckade resultat i följd för att avsökningen ska anses vara lyckad efter att den har misslyckats. Standardvärdet är 1. Måste vara 1 för liveness och start. Minimivärdet är 1. Maximalt värde är 10. Int
tcpSocket TCPSocket anger en åtgärd som involverar en TCP-port. TCP-krokar stöds inte ännu. ContainerAppProbeTcpSocket
terminationGracePeriodSeconds Valfri varaktighet i sekunder podden måste avslutas korrekt vid avsökningsfel. Respitperioden är varaktigheten i sekunder efter att processerna som körs i podden har skickats en avslutningssignal och den tid då processerna med två skäl stoppas med en killsignal. Ange det här värdet längre än den förväntade rensningstiden för din process. Om det här värdet är noll används poddens avslutningGracePeriodSeconds. Annars åsidosätter det här värdet värdet som tillhandahålls av poddspecifikationen. Värdet måste vara ett heltal som inte är negativt. Värdet noll anger stopp direkt via avlivningssignalen (ingen möjlighet att stänga av). Det här är ett alfafält och kräver aktivering av funktionsporten ProbeTerminationGracePeriod. Maximalt värde är 3 600 sekunder (1 timme) Int
timeoutSeconds Antal sekunder efter vilken avsökningen överskrider tidsgränsen. Standardvärdet är 1 sekund. Minimivärdet är 1. Maximalt värde är 240. Int
typ Typ av avsökning. "Livskraft"
Beredskap
"Start"

ContainerAppProbeHttpGet

Namn Beskrivning Värde
värd Värdnamn att ansluta till, standardvärdet för podd-IP-adressen. Du vill förmodligen ange "Värd" i httpHeaders i stället. sträng
httpHeaders Anpassade rubriker som ska anges i begäran. HTTP tillåter upprepade rubriker. ContainerAppProbeHttpGetHttpHeadersItem[]
stig Sökväg till åtkomst på HTTP-servern. sträng
hamn Namn eller nummer på porten som ska kommas åt i containern. Talet måste ligga i intervallet 1 till 65535. Namnet måste vara en IANA_SVC_NAME. int (krävs)
schema Schema som ska användas för att ansluta till värden. Standardvärdet är HTTP. "HTTP"
"HTTPS"

ContainerAppProbeHttpGetHttpHeadersItem

Namn Beskrivning Värde
Namn Namn på rubrikfält sträng (krävs)
värde Värdet för sidhuvudfält sträng (krävs)

ContainerAppProbeTcpSocket

Namn Beskrivning Värde
värd Valfritt: Värdnamn att ansluta till, standardvärdet för podd-IP-adressen. sträng
hamn Nummer eller namn på porten som ska kommas åt i containern. Talet måste ligga i intervallet 1 till 65535. Namnet måste vara en IANA_SVC_NAME. int (krävs)

ContainerResources

Namn Beskrivning Värde
processor Nödvändig processor i kärnor, t.ex. 0,5 Om du vill ange ett decimalvärde använder du funktionen json(). int- eller json-decimal
minne Nödvändigt minne, t.ex. "250 Mb" sträng

VolumeMount

Namn Beskrivning Värde
mountPath Sökväg i containern där volymen ska monteras. Får inte innehålla :. sträng
subPath Sökväg inom volymen som containerns volym ska monteras från. Standardvärdet är "" (volymens rot). sträng
volumeName Detta måste matcha namnet på en volym. sträng

InitContainer

Namn Beskrivning Värde
args Kommandoargument för containerstart. string[]
befallning Startkommando för container. string[]
Env Miljövariabler för containrar. EnvironmentVar[]
bild Containeravbildningstagg. sträng
Namn Anpassat containernamn. sträng
Resurser Krav för containerresurser. ContainerResources
volumeMounts Containervolymmonteringar. VolumeMount[]

Skala

Namn Beskrivning Värde
maxReplicas Valfri. Maximalt antal containerrepliker. Standardvärdet är 10 om det inte anges. Int
minReplicas Valfri. Minsta antal containerrepliker. Int
reglemente Skalningsregler. ScaleRule[]

ScaleRule

Namn Beskrivning Värde
azureQueue Azure Queue-baserad skalning. QueueScaleRule
sed Anpassad skalningsregel. CustomScaleRule
http HTTP-begärandensbaserad skalning. HttpScaleRule
Namn Namn på skalningsregel sträng
Tcp Tcp begär baserad skalning. TcpScaleRule

QueueScaleRule

Namn Beskrivning Värde
Auth Autentiseringshemligheter för köskalningsregeln. ScaleRuleAuth[]
queueLength Kölängd. Int
queueName Könamn. sträng

ScaleRuleAuth

Namn Beskrivning Värde
secretRef Namnet på hemligheten som autentiseringsparamerna ska hämtas från. sträng
triggerParameter Utlösarparameter som använder hemligheten sträng

CustomScaleRule

Namn Beskrivning Värde
Auth Autentiseringshemligheter för den anpassade skalningsregeln. ScaleRuleAuth[]
metadata Metadataegenskaper för att beskriva en anpassad skalningsregel. CustomScaleRuleMetadata
typ Typ av anpassad skalningsregel
t.ex. azure-servicebus, redis osv.
sträng

CustomScaleRuleMetadata

Namn Beskrivning Värde
{anpassad egenskap} sträng

HttpScaleRule

Namn Beskrivning Värde
Auth Autentiseringshemligheter för den anpassade skalningsregeln. ScaleRuleAuth[]
metadata Metadataegenskaper för att beskriva http-skalningsregel. HttpScaleRuleMetadata

HttpScaleRuleMetadata

Namn Beskrivning Värde
{anpassad egenskap} sträng

TcpScaleRule

Namn Beskrivning Värde
Auth Autentiseringshemligheter för tcp-skalningsregeln. ScaleRuleAuth[]
metadata Metadataegenskaper för att beskriva tcp-skalningsregeln. TcpScaleRuleMetadata

TcpScaleRuleMetadata

Namn Beskrivning Värde
{anpassad egenskap} sträng

ServiceBind

Namn Beskrivning Värde
Namn Namnet på tjänstbindningen sträng
serviceId Resurs-ID för måltjänsten sträng

Volym

Namn Beskrivning Värde
mountOptions Monteringsalternativ som används vid montering av AzureFile. Måste vara en kommaavgränsad sträng. sträng
Namn Volymnamn. sträng
Hemligheter Lista över hemligheter som ska läggas till i volymen. Om inga hemligheter anges läggs alla hemligheter i samlingen till i volymen. SecretVolumeItem[]
storageName Namnet på lagringsresursen. Du behöver inte ange EmptyDir och Secret. sträng
storageType Lagringstyp för volymen. Om det inte anges använder du EmptyDir. "AzureFile"
"EmptyDir"
"Hemlighet"

SecretVolumeItem

Namn Beskrivning Värde
stig Sökväg till projekthemlighet till. Om ingen sökväg anges är sökvägen standard för namnet på hemligheten som anges i secretRef. sträng
secretRef Namnet på containerappens hemlighet som det hemliga värdet ska hämtas från. sträng

Snabbstartsmallar

Följande snabbstartsmallar distribuerar den här resurstypen.

Mall Beskrivning
Skapar en containerapp och en miljö med register

Distribuera till Azure
Skapa en containerappmiljö med en grundläggande containerapp från ett Azure Container Registry. Den distribuerar också en Log Analytics-arbetsyta för att lagra loggar.
Skapar en två containerapp med en containerappsmiljö

Distribuera till Azure
Skapa en två containerappmiljö med en grundläggande containerapp. Den distribuerar också en Log Analytics-arbetsyta för att lagra loggar.
Skapar en containerapp i en containerappmiljö

Distribuera till Azure
Skapa en containerappmiljö med en grundläggande containerapp. Den distribuerar också en Log Analytics-arbetsyta för att lagra loggar.
Skapar en containerapp med en definierad HTTP-skalningsregel

Distribuera till Azure
Skapa en containerappmiljö med en grundläggande containerapp som skalar baserat på HTTP-trafik.
Skapar en extern containerappmiljö med ett VNET-

Distribuera till Azure
Skapar en extern containerappmiljö med ett VNET.
Skapar en intern containerappmiljö med ett VNET-

Distribuera till Azure
Skapar en intern containerappmiljö med ett VNET.

Resursdefinition för ARM-mall

Resurstypen containerApps kan distribueras med åtgärder som mål:

En lista över ändrade egenskaper i varje API-version finns i ändringsloggen.

Resursformat

Om du vill skapa en Microsoft.App/containerApps resurs lägger du till följande JSON i mallen.

{
  "type": "Microsoft.App/containerApps",
  "apiVersion": "2024-03-01",
  "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",
        "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": [
        {
          "name": "string",
          "serviceId": "string"
        }
      ],
      "terminationGracePeriodSeconds": "int",
      "volumes": [
        {
          "mountOptions": "string",
          "name": "string",
          "secrets": [
            {
              "path": "string",
              "secretRef": "string"
            }
          ],
          "storageName": "string",
          "storageType": "string"
        }
      ]
    },
    "workloadProfileName": "string"
  }
}

Egenskapsvärden

containerApps

Namn Beskrivning Värde
typ Resurstypen "Microsoft.App/containerApps"
apiVersion Resurs-API-versionen '2024-03-01'
Namn Resursnamnet sträng (krävs)

Teckengräns: 2–32

Giltiga tecken:
Gemener, siffror och bindestreck..

Börja med bokstav och slut med alfanumeriskt.
plats Den geo-plats där resursen finns sträng (krävs)
Taggar Resurstaggar. Ordlista med taggnamn och värden. Se taggar i mallar
extendedLocation Den komplexa typen av utökad plats. ExtendedLocation
identitet hanterade identiteter för containerappen för att interagera med andra Azure-tjänster utan att ha några hemligheter eller autentiseringsuppgifter i koden. ManagedServiceIdentity
managedBy Det fullständigt kvalificerade resurs-ID:t för resursen som hanterar den här resursen. Anger om den här resursen hanteras av en annan Azure-resurs. Om detta finns tar distributionen i fullständigt läge inte bort resursen om den tas bort från mallen eftersom den hanteras av en annan resurs. sträng
Egenskaper Egenskaper för ContainerApp-resurs ContainerAppProperties

ExtendedLocation

Namn Beskrivning Värde
Namn Namnet på den utökade platsen. sträng
typ Typ av utökad plats. "CustomLocation"

ManagedServiceIdentity

Namn Beskrivning Värde
typ Typ av hanterad tjänstidentitet (där både SystemAssigned- och UserAssigned-typer tillåts). "Ingen"
"SystemAssigned"
"SystemAssigned,UserAssigned"
"UserAssigned" (krävs)
userAssignedIdentities Uppsättningen användartilldelade identiteter som är associerade med resursen. Ordlistenycklarna userAssignedIdentities är ARM-resurs-ID:er i formuläret: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Ordlistevärdena kan vara tomma objekt ({}) i begäranden. UserAssignedIdentiteter

UserAssignedIdentiteter

Namn Beskrivning Värde
{anpassad egenskap} UserAssignedIdentity

UserAssignedIdentity

Det här objektet innehåller inga egenskaper som ska anges under distributionen. Alla egenskaper är ReadOnly.

ContainerAppProperties

Namn Beskrivning Värde
konfiguration Konfigurationsegenskaper för containerappar som inte är versioner. Konfiguration
environmentId Resurs-ID för miljön. sträng
managedEnvironmentId Deprecated. Resurs-ID för containerappens miljö. sträng
mall Programdefinition med containerappversion. mall
workloadProfileName Namn på arbetsbelastningsprofil som ska fästas för körning av containerappar. sträng

Konfiguration

Namn Beskrivning Värde
activeRevisionsMode ActiveRevisionsMode styr hur aktiva revisioner hanteras för containerappen:
{list} {item} Flera: flera revisioner kan vara aktiva. {/item} {item} Enskild: Endast en revision kan vara aktiv i taget. Revisionsvikter kan inte användas i det här läget. Om inget värde anges är detta standardvärdet. {/item} {/list}
"Flera"
"Enkel"
dapr Dapr-konfiguration för containerappen. Dapr
Inträngning Ingresskonfigurationer. Inkommande
maxInactiveRevisions Valfri. Maximalt antal inaktiva revisioner som en containerapp kan ha. Int
Register Samling autentiseringsuppgifter för privata containerregister för containrar som används av containerappen RegistryCredentials[]
Hemligheter Samling hemligheter som används av en containerapp Hemlig[]
tjänst ContainerApp som ska vara en dev Container App Service Service

Dapr

Namn Beskrivning Värde
appId Dapr-programidentifierare sträng
appPort Talar om för Dapr vilken port programmet lyssnar på Int
appProtocol Talar om för Dapr vilket protokoll programmet använder. Giltiga alternativ är http och grpc. Standardvärdet är http "grpc"
"http"
enableApiLogging Aktiverar API-loggning för Dapr-sidovagnen Bool
Aktiverat Booleskt värde som anger om Dapr-sidobilen är aktiverad Bool
httpMaxRequestSize Öka maxstorleken för http- och grpc-serverparametern för begärandetext i MB för att hantera uppladdning av stora filer. Standardvärdet är 4 MB. Int
httpReadBufferSize Dapr maximal storlek på http-sidhuvudläsningsbuffert i KB som ska hanteras när flera KB-huvuden skickas. Standardvärdet är 65 KB. Int
logLevel Anger loggnivån för Dapr-sidovagnen. Tillåtna värden är felsökning, information, varning, fel. Standardvärdet är information. "felsökning"
"fel"
"info"
"varna"

Inträngning

Namn Beskrivning Värde
additionalPortMappings Inställningar för att exponera ytterligare portar i containerappen IngressPortMapping[]
allowInsecure Bool som anger om HTTP-anslutningar till tillåts. Om värdet är inställt på falska HTTP-anslutningar omdirigeras automatiskt till HTTPS-anslutningar Bool
clientCertificateMode Klientcertifikatläge för mTLS-autentisering. Ignorera anger att servern släpper klientcertifikatet vid vidarebefordran. Accept anger att servern vidarebefordrar klientcertifikatet men inte kräver något klientcertifikat. Kräv anger att servern kräver ett klientcertifikat. "acceptera"
"ignorera"
"kräv"
corsPolicy CORS-princip för containerapp CorsPolicy
customDomains anpassade domänbindningar för Container Apps värdnamn. CustomDomain[]
exposedPort Exponerad port i containrar för TCP-trafik från ingress Int
extern Bool som anger om appen exponerar en extern http-slutpunkt Bool
ipSecurityRestrictions Regler för att begränsa inkommande IP-adress. IpSecurityRestrictionRule[]
stickySessions Sticky-sessioner för enkelt revisionsläge IngressStickySessions
targetPort Målport i containrar för trafik från ingress Int
trafik Trafikvikter för appens revisioner TrafficWeight[]
transport Protokoll för inkommande transport "auto"
"http"
"http2"
"tcp"

IngressPortMapping

Namn Beskrivning Värde
exposedPort Anger den exponerade porten för målporten. Om det inte anges är målporten standard Int
extern Anger om appporten är tillgänglig utanför miljön bool (krävs)
targetPort Anger att portanvändarens container lyssnar på int (krävs)

CorsPolicy

Namn Beskrivning Värde
allowCredentials Anger om resursen tillåter autentiseringsuppgifter Bool
allowedHeaders Anger innehållet för rubriken access-control-allow-headers string[]
allowedMethods Anger innehållet för huvudet access-control-allow-methods string[]
allowedOrigins Anger innehållet för huvudet access-control-allow-origins string[] (krävs)
exposeHeaders Anger innehållet för rubriken access-control-expose-headers string[]
maxAge Anger innehållet för rubriken access-control-max-age Int

CustomDomain

Namn Beskrivning Värde
bindingType Bindningstyp för anpassad domän. "Inaktiverad"
"SniEnabled"
certificateId Resurs-ID för certifikatet som ska bindas till det här värdnamnet. Måste finnas i den hanterade miljön. sträng
Namn Värdnamn. sträng (krävs)

IpSecurityRestrictionRule

Namn Beskrivning Värde
handling Tillåt eller neka regler för att fastställa för inkommande IP-adress. Obs! Regler kan bara bestå av ALLA tillåtna eller ALLA neka "Tillåt"
"Neka" (krävs)
beskrivning Beskriv ip-begränsningsregeln som skickas till containerappen. Det här är ett valfritt fält. sträng
ipAddressRange CIDR-notation för att matcha inkommande IP-adress sträng (krävs)
Namn Namn på IP-begränsningsregeln. sträng (krävs)

IngressStickySessions

Namn Beskrivning Värde
samhörighet Fäst sessionstillhörighet "ingen"
"klibbig"

TrafficWeight

Namn Beskrivning Värde
etikett Associerar en trafiketikett med en revision sträng
latestRevision Anger att trafikvikten tillhör en senaste stabil revision Bool
revisionName Namn på en revision sträng
vikt Trafikvikt tilldelad till en revision Int

RegistryCredentials

Namn Beskrivning Värde
identitet En hanterad identitet som ska användas för att autentisera med Azure Container Registry. För användartilldelade identiteter använder du det fullständiga användartilldelade identitetsresurs-ID:t. För systemtilldelade identiteter använder du "system" sträng
passwordSecretRef Namnet på hemligheten som innehåller lösenordet för registerinloggning sträng
server Container Registry Server sträng
användarnamn Användarnamn för containerregister sträng

Hemlig

Namn Beskrivning Värde
identitet Resurs-ID för en hanterad identitet som ska autentiseras med Azure Key Vault eller System för att använda en systemtilldelad identitet. sträng
keyVaultUrl Url för Azure Key Vault som pekar på hemligheten som refereras av containerappen. sträng
Namn Hemligt namn. sträng
värde Hemligt värde. sträng

Begränsningar:
Känsligt värde. Skicka in som en säker parameter.

Tjänst

Namn Beskrivning Värde
typ Dev ContainerApp-tjänsttyp sträng (krävs)

Mall

Namn Beskrivning Värde
Behållare Lista över containerdefinitioner för containerappen. Container[]
initContainers Lista över specialiserade containrar som körs före appcontainrar. InitContainer[]
revisionSuffix Användarvänligt suffix som läggs till i revisionsnamnet sträng
skala Skalningsegenskaper för containerappen. Skala
serviceBinds Lista över containerapptjänster som är bundna till appen ServiceBind[]
terminationGracePeriodSeconds Valfri varaktighet i sekunder containerappinstansen måste avslutas korrekt. Värdet måste vara ett heltal som inte är negativt. Värdet noll anger stopp direkt via avlivningssignalen (ingen möjlighet att stänga av). Om det här värdet är noll används standard respitperioden i stället. Ange det här värdet längre än den förväntade rensningstiden för din process. Standardvärdet är 30 sekunder. Int
Volymer Lista över volymdefinitioner för containerappen. Volume[]

Behållare

Namn Beskrivning Värde
args Kommandoargument för containerstart. string[]
befallning Startkommando för container. string[]
Env Miljövariabler för containrar. EnvironmentVar[]
bild Containeravbildningstagg. sträng
Namn Anpassat containernamn. sträng
Sonder Lista över avsökningar för containern. ContainerAppProbe[]
Resurser Krav för containerresurser. ContainerResources
volumeMounts Containervolymmonteringar. VolumeMount[]

EnvironmentVar

Namn Beskrivning Värde
Namn Miljövariabelnamn. sträng
secretRef Namnet på containerappens hemlighet som miljövariabelvärdet ska hämtas från. sträng
värde Variabelvärde för icke-hemlig miljö. sträng

ContainerAppProbe

Namn Beskrivning Värde
failureThreshold Minsta på varandra följande fel för avsökningen som ska betraktas som misslyckad efter att ha lyckats. Standardvärdet är 3. Minimivärdet är 1. Maximalt värde är 10. Int
httpGet HTTPGet anger http-begäran som ska utföras. ContainerAppProbeHttpGet
initialDelaySeconds Antal sekunder efter att containern har startats innan liveness-avsökningar initieras. Minimivärdet är 1. Maximalt värde är 60. Int
periodSeconds Hur ofta (i sekunder) avsökningen ska utföras. Standardvärdet är 10 sekunder. Minimivärdet är 1. Maximalt värde är 240. Int
successThreshold Minsta lyckade resultat i följd för att avsökningen ska anses vara lyckad efter att den har misslyckats. Standardvärdet är 1. Måste vara 1 för liveness och start. Minimivärdet är 1. Maximalt värde är 10. Int
tcpSocket TCPSocket anger en åtgärd som involverar en TCP-port. TCP-krokar stöds inte ännu. ContainerAppProbeTcpSocket
terminationGracePeriodSeconds Valfri varaktighet i sekunder podden måste avslutas korrekt vid avsökningsfel. Respitperioden är varaktigheten i sekunder efter att processerna som körs i podden har skickats en avslutningssignal och den tid då processerna med två skäl stoppas med en killsignal. Ange det här värdet längre än den förväntade rensningstiden för din process. Om det här värdet är noll används poddens avslutningGracePeriodSeconds. Annars åsidosätter det här värdet värdet som tillhandahålls av poddspecifikationen. Värdet måste vara ett heltal som inte är negativt. Värdet noll anger stopp direkt via avlivningssignalen (ingen möjlighet att stänga av). Det här är ett alfafält och kräver aktivering av funktionsporten ProbeTerminationGracePeriod. Maximalt värde är 3 600 sekunder (1 timme) Int
timeoutSeconds Antal sekunder efter vilken avsökningen överskrider tidsgränsen. Standardvärdet är 1 sekund. Minimivärdet är 1. Maximalt värde är 240. Int
typ Typ av avsökning. "Livskraft"
Beredskap
"Start"

ContainerAppProbeHttpGet

Namn Beskrivning Värde
värd Värdnamn att ansluta till, standardvärdet för podd-IP-adressen. Du vill förmodligen ange "Värd" i httpHeaders i stället. sträng
httpHeaders Anpassade rubriker som ska anges i begäran. HTTP tillåter upprepade rubriker. ContainerAppProbeHttpGetHttpHeadersItem[]
stig Sökväg till åtkomst på HTTP-servern. sträng
hamn Namn eller nummer på porten som ska kommas åt i containern. Talet måste ligga i intervallet 1 till 65535. Namnet måste vara en IANA_SVC_NAME. int (krävs)
schema Schema som ska användas för att ansluta till värden. Standardvärdet är HTTP. "HTTP"
"HTTPS"

ContainerAppProbeHttpGetHttpHeadersItem

Namn Beskrivning Värde
Namn Namn på rubrikfält sträng (krävs)
värde Värdet för sidhuvudfält sträng (krävs)

ContainerAppProbeTcpSocket

Namn Beskrivning Värde
värd Valfritt: Värdnamn att ansluta till, standardvärdet för podd-IP-adressen. sträng
hamn Nummer eller namn på porten som ska kommas åt i containern. Talet måste ligga i intervallet 1 till 65535. Namnet måste vara en IANA_SVC_NAME. int (krävs)

ContainerResources

Namn Beskrivning Värde
processor Nödvändig processor i kärnor, t.ex. 0,5 Om du vill ange ett decimalvärde använder du funktionen json(). int- eller json-decimal
minne Nödvändigt minne, t.ex. "250 Mb" sträng

VolumeMount

Namn Beskrivning Värde
mountPath Sökväg i containern där volymen ska monteras. Får inte innehålla :. sträng
subPath Sökväg inom volymen som containerns volym ska monteras från. Standardvärdet är "" (volymens rot). sträng
volumeName Detta måste matcha namnet på en volym. sträng

InitContainer

Namn Beskrivning Värde
args Kommandoargument för containerstart. string[]
befallning Startkommando för container. string[]
Env Miljövariabler för containrar. EnvironmentVar[]
bild Containeravbildningstagg. sträng
Namn Anpassat containernamn. sträng
Resurser Krav för containerresurser. ContainerResources
volumeMounts Containervolymmonteringar. VolumeMount[]

Skala

Namn Beskrivning Värde
maxReplicas Valfri. Maximalt antal containerrepliker. Standardvärdet är 10 om det inte anges. Int
minReplicas Valfri. Minsta antal containerrepliker. Int
reglemente Skalningsregler. ScaleRule[]

ScaleRule

Namn Beskrivning Värde
azureQueue Azure Queue-baserad skalning. QueueScaleRule
sed Anpassad skalningsregel. CustomScaleRule
http HTTP-begärandensbaserad skalning. HttpScaleRule
Namn Namn på skalningsregel sträng
Tcp Tcp begär baserad skalning. TcpScaleRule

QueueScaleRule

Namn Beskrivning Värde
Auth Autentiseringshemligheter för köskalningsregeln. ScaleRuleAuth[]
queueLength Kölängd. Int
queueName Könamn. sträng

ScaleRuleAuth

Namn Beskrivning Värde
secretRef Namnet på hemligheten som autentiseringsparamerna ska hämtas från. sträng
triggerParameter Utlösarparameter som använder hemligheten sträng

CustomScaleRule

Namn Beskrivning Värde
Auth Autentiseringshemligheter för den anpassade skalningsregeln. ScaleRuleAuth[]
metadata Metadataegenskaper för att beskriva en anpassad skalningsregel. CustomScaleRuleMetadata
typ Typ av anpassad skalningsregel
t.ex. azure-servicebus, redis osv.
sträng

CustomScaleRuleMetadata

Namn Beskrivning Värde
{anpassad egenskap} sträng

HttpScaleRule

Namn Beskrivning Värde
Auth Autentiseringshemligheter för den anpassade skalningsregeln. ScaleRuleAuth[]
metadata Metadataegenskaper för att beskriva http-skalningsregel. HttpScaleRuleMetadata

HttpScaleRuleMetadata

Namn Beskrivning Värde
{anpassad egenskap} sträng

TcpScaleRule

Namn Beskrivning Värde
Auth Autentiseringshemligheter för tcp-skalningsregeln. ScaleRuleAuth[]
metadata Metadataegenskaper för att beskriva tcp-skalningsregeln. TcpScaleRuleMetadata

TcpScaleRuleMetadata

Namn Beskrivning Värde
{anpassad egenskap} sträng

ServiceBind

Namn Beskrivning Värde
Namn Namnet på tjänstbindningen sträng
serviceId Resurs-ID för måltjänsten sträng

Volym

Namn Beskrivning Värde
mountOptions Monteringsalternativ som används vid montering av AzureFile. Måste vara en kommaavgränsad sträng. sträng
Namn Volymnamn. sträng
Hemligheter Lista över hemligheter som ska läggas till i volymen. Om inga hemligheter anges läggs alla hemligheter i samlingen till i volymen. SecretVolumeItem[]
storageName Namnet på lagringsresursen. Du behöver inte ange EmptyDir och Secret. sträng
storageType Lagringstyp för volymen. Om det inte anges använder du EmptyDir. "AzureFile"
"EmptyDir"
"Hemlighet"

SecretVolumeItem

Namn Beskrivning Värde
stig Sökväg till projekthemlighet till. Om ingen sökväg anges är sökvägen standard för namnet på hemligheten som anges i secretRef. sträng
secretRef Namnet på containerappens hemlighet som det hemliga värdet ska hämtas från. sträng

Snabbstartsmallar

Följande snabbstartsmallar distribuerar den här resurstypen.

Mall Beskrivning
Skapar en containerapp och en miljö med register

Distribuera till Azure
Skapa en containerappmiljö med en grundläggande containerapp från ett Azure Container Registry. Den distribuerar också en Log Analytics-arbetsyta för att lagra loggar.
Skapar en två containerapp med en containerappsmiljö

Distribuera till Azure
Skapa en två containerappmiljö med en grundläggande containerapp. Den distribuerar också en Log Analytics-arbetsyta för att lagra loggar.
Skapar en containerapp i en containerappmiljö

Distribuera till Azure
Skapa en containerappmiljö med en grundläggande containerapp. Den distribuerar också en Log Analytics-arbetsyta för att lagra loggar.
Skapar en containerapp med en definierad HTTP-skalningsregel

Distribuera till Azure
Skapa en containerappmiljö med en grundläggande containerapp som skalar baserat på HTTP-trafik.
Skapar en extern containerappmiljö med ett VNET-

Distribuera till Azure
Skapar en extern containerappmiljö med ett VNET.
Skapar en intern containerappmiljö med ett VNET-

Distribuera till Azure
Skapar en intern containerappmiljö med ett VNET.

Resursdefinition för Terraform (AzAPI-provider)

Resurstypen containerApps kan distribueras med åtgärder som mål:

  • Resursgrupper

En lista över ändrade egenskaper i varje API-version finns i ändringsloggen.

Resursformat

Om du vill skapa en Microsoft.App/containerApps resurs lägger du till följande Terraform i mallen.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.App/containerApps@2024-03-01"
  name = "string"
  location = "string"
  parent_id = "string"
  tags = {
    tagName1 = "tagValue1"
    tagName2 = "tagValue2"
  }
  identity {
    type = "string"
    identity_ids = []
  }
  body = jsonencode({
    properties = {
      configuration = {
        activeRevisionsMode = "string"
        dapr = {
          appId = "string"
          appPort = int
          appProtocol = "string"
          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
          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 = [
          {
            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"
  })
}

Egenskapsvärden

containerApps

Namn Beskrivning Värde
typ Resurstypen "Microsoft.App/containerApps@2024-03-01"
Namn Resursnamnet sträng (krävs)

Teckengräns: 2–32

Giltiga tecken:
Gemener, siffror och bindestreck..

Börja med bokstav och slut med alfanumeriskt.
plats Den geo-plats där resursen finns sträng (krävs)
parent_id Om du vill distribuera till en resursgrupp använder du ID:t för den resursgruppen. sträng (krävs)
Taggar Resurstaggar. Ordlista med taggnamn och värden.
extendedLocation Den komplexa typen av utökad plats. ExtendedLocation
identitet hanterade identiteter för containerappen för att interagera med andra Azure-tjänster utan att ha några hemligheter eller autentiseringsuppgifter i koden. ManagedServiceIdentity
managedBy Det fullständigt kvalificerade resurs-ID:t för resursen som hanterar den här resursen. Anger om den här resursen hanteras av en annan Azure-resurs. Om detta finns tar distributionen i fullständigt läge inte bort resursen om den tas bort från mallen eftersom den hanteras av en annan resurs. sträng
Egenskaper Egenskaper för ContainerApp-resurs ContainerAppProperties

ExtendedLocation

Namn Beskrivning Värde
Namn Namnet på den utökade platsen. sträng
typ Typ av utökad plats. "CustomLocation"

ManagedServiceIdentity

Namn Beskrivning Värde
typ Typ av hanterad tjänstidentitet (där både SystemAssigned- och UserAssigned-typer tillåts). "SystemAssigned"
"SystemAssigned,UserAssigned"
"UserAssigned" (krävs)
identity_ids Uppsättningen användartilldelade identiteter som är associerade med resursen. Ordlistenycklarna userAssignedIdentities är ARM-resurs-ID:er i formuläret: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Ordlistevärdena kan vara tomma objekt ({}) i begäranden. Matris med användaridentitets-ID:t.

UserAssignedIdentiteter

Namn Beskrivning Värde
{anpassad egenskap} UserAssignedIdentity

UserAssignedIdentity

Det här objektet innehåller inga egenskaper som ska anges under distributionen. Alla egenskaper är ReadOnly.

ContainerAppProperties

Namn Beskrivning Värde
konfiguration Konfigurationsegenskaper för containerappar som inte är versioner. Konfiguration
environmentId Resurs-ID för miljön. sträng
managedEnvironmentId Deprecated. Resurs-ID för containerappens miljö. sträng
mall Programdefinition med containerappversion. mall
workloadProfileName Namn på arbetsbelastningsprofil som ska fästas för körning av containerappar. sträng

Konfiguration

Namn Beskrivning Värde
activeRevisionsMode ActiveRevisionsMode styr hur aktiva revisioner hanteras för containerappen:
{list} {item} Flera: flera revisioner kan vara aktiva. {/item} {item} Enskild: Endast en revision kan vara aktiv i taget. Revisionsvikter kan inte användas i det här läget. Om inget värde anges är detta standardvärdet. {/item} {/list}
"Flera"
"Enkel"
dapr Dapr-konfiguration för containerappen. Dapr
Inträngning Ingresskonfigurationer. Inkommande
maxInactiveRevisions Valfri. Maximalt antal inaktiva revisioner som en containerapp kan ha. Int
Register Samling autentiseringsuppgifter för privata containerregister för containrar som används av containerappen RegistryCredentials[]
Hemligheter Samling hemligheter som används av en containerapp Hemlig[]
tjänst ContainerApp som ska vara en dev Container App Service Service

Dapr

Namn Beskrivning Värde
appId Dapr-programidentifierare sträng
appPort Talar om för Dapr vilken port programmet lyssnar på Int
appProtocol Talar om för Dapr vilket protokoll programmet använder. Giltiga alternativ är http och grpc. Standardvärdet är http "grpc"
"http"
enableApiLogging Aktiverar API-loggning för Dapr-sidovagnen Bool
Aktiverat Booleskt värde som anger om Dapr-sidobilen är aktiverad Bool
httpMaxRequestSize Öka maxstorleken för http- och grpc-serverparametern för begärandetext i MB för att hantera uppladdning av stora filer. Standardvärdet är 4 MB. Int
httpReadBufferSize Dapr maximal storlek på http-sidhuvudläsningsbuffert i KB som ska hanteras när flera KB-huvuden skickas. Standardvärdet är 65 KB. Int
logLevel Anger loggnivån för Dapr-sidovagnen. Tillåtna värden är felsökning, information, varning, fel. Standardvärdet är information. "felsöka"
"fel"
"info"
"varna"

Inträngning

Namn Beskrivning Värde
additionalPortMappings Inställningar för att exponera ytterligare portar i containerappen IngressPortMapping[]
allowInsecure Bool som anger om HTTP-anslutningar till tillåts. Om värdet är inställt på falska HTTP-anslutningar omdirigeras automatiskt till HTTPS-anslutningar Bool
clientCertificateMode Klientcertifikatläge för mTLS-autentisering. Ignorera anger att servern släpper klientcertifikatet vid vidarebefordran. Accept anger att servern vidarebefordrar klientcertifikatet men inte kräver något klientcertifikat. Kräv anger att servern kräver ett klientcertifikat. "acceptera"
"ignorera"
"kräv"
corsPolicy CORS-princip för containerapp CorsPolicy
customDomains anpassade domänbindningar för Container Apps värdnamn. CustomDomain[]
exposedPort Exponerad port i containrar för TCP-trafik från ingress Int
extern Bool som anger om appen exponerar en extern http-slutpunkt Bool
ipSecurityRestrictions Regler för att begränsa inkommande IP-adress. IpSecurityRestrictionRule[]
stickySessions Sticky-sessioner för enkelt revisionsläge IngressStickySessions
targetPort Målport i containrar för trafik från ingress Int
trafik Trafikvikter för appens revisioner TrafficWeight[]
transport Protokoll för inkommande transport "auto"
"http"
"http2"
"tcp"

IngressPortMapping

Namn Beskrivning Värde
exposedPort Anger den exponerade porten för målporten. Om det inte anges är målporten standard Int
extern Anger om appporten är tillgänglig utanför miljön bool (krävs)
targetPort Anger att portanvändarens container lyssnar på int (krävs)

CorsPolicy

Namn Beskrivning Värde
allowCredentials Anger om resursen tillåter autentiseringsuppgifter Bool
allowedHeaders Anger innehållet för rubriken access-control-allow-headers string[]
allowedMethods Anger innehållet för huvudet access-control-allow-methods string[]
allowedOrigins Anger innehållet för huvudet access-control-allow-origins string[] (krävs)
exposeHeaders Anger innehållet för rubriken access-control-expose-headers string[]
maxAge Anger innehållet för rubriken access-control-max-age Int

CustomDomain

Namn Beskrivning Värde
bindingType Bindningstyp för anpassad domän. "Inaktiverad"
"SniEnabled"
certificateId Resurs-ID för certifikatet som ska bindas till det här värdnamnet. Måste finnas i den hanterade miljön. sträng
Namn Värdnamn. sträng (krävs)

IpSecurityRestrictionRule

Namn Beskrivning Värde
handling Tillåt eller neka regler för att fastställa för inkommande IP-adress. Obs! Regler kan bara bestå av ALLA tillåtna eller ALLA neka "Tillåt"
"Neka" (krävs)
beskrivning Beskriv ip-begränsningsregeln som skickas till containerappen. Det här är ett valfritt fält. sträng
ipAddressRange CIDR-notation för att matcha inkommande IP-adress sträng (krävs)
Namn Namn på IP-begränsningsregeln. sträng (krävs)

IngressStickySessions

Namn Beskrivning Värde
samhörighet Fäst sessionstillhörighet "ingen"
"klibbig"

TrafficWeight

Namn Beskrivning Värde
etikett Associerar en trafiketikett med en revision sträng
latestRevision Anger att trafikvikten tillhör en senaste stabil revision Bool
revisionName Namn på en revision sträng
vikt Trafikvikt tilldelad till en revision Int

RegistryCredentials

Namn Beskrivning Värde
identitet En hanterad identitet som ska användas för att autentisera med Azure Container Registry. För användartilldelade identiteter använder du det fullständiga användartilldelade identitetsresurs-ID:t. För systemtilldelade identiteter använder du "system" sträng
passwordSecretRef Namnet på hemligheten som innehåller lösenordet för registerinloggning sträng
server Container Registry Server sträng
användarnamn Användarnamn för containerregister sträng

Hemlig

Namn Beskrivning Värde
identitet Resurs-ID för en hanterad identitet som ska autentiseras med Azure Key Vault eller System för att använda en systemtilldelad identitet. sträng
keyVaultUrl Url för Azure Key Vault som pekar på hemligheten som refereras av containerappen. sträng
Namn Hemligt namn. sträng
värde Hemligt värde. sträng

Begränsningar:
Känsligt värde. Skicka in som en säker parameter.

Tjänst

Namn Beskrivning Värde
typ Dev ContainerApp-tjänsttyp sträng (krävs)

Mall

Namn Beskrivning Värde
Behållare Lista över containerdefinitioner för containerappen. Container[]
initContainers Lista över specialiserade containrar som körs före appcontainrar. InitContainer[]
revisionSuffix Användarvänligt suffix som läggs till i revisionsnamnet sträng
skala Skalningsegenskaper för containerappen. Skala
serviceBinds Lista över containerapptjänster som är bundna till appen ServiceBind[]
terminationGracePeriodSeconds Valfri varaktighet i sekunder containerappinstansen måste avslutas korrekt. Värdet måste vara ett heltal som inte är negativt. Värdet noll anger stopp direkt via avlivningssignalen (ingen möjlighet att stänga av). Om det här värdet är noll används standard respitperioden i stället. Ange det här värdet längre än den förväntade rensningstiden för din process. Standardvärdet är 30 sekunder. Int
Volymer Lista över volymdefinitioner för containerappen. Volume[]

Behållare

Namn Beskrivning Värde
args Kommandoargument för containerstart. string[]
befallning Startkommando för container. string[]
Env Miljövariabler för containrar. EnvironmentVar[]
bild Containeravbildningstagg. sträng
Namn Anpassat containernamn. sträng
Sonder Lista över avsökningar för containern. ContainerAppProbe[]
Resurser Krav för containerresurser. ContainerResources
volumeMounts Containervolymmonteringar. VolumeMount[]

EnvironmentVar

Namn Beskrivning Värde
Namn Miljövariabelnamn. sträng
secretRef Namnet på containerappens hemlighet som miljövariabelvärdet ska hämtas från. sträng
värde Variabelvärde för icke-hemlig miljö. sträng

ContainerAppProbe

Namn Beskrivning Värde
failureThreshold Minsta på varandra följande fel för avsökningen som ska betraktas som misslyckad efter att ha lyckats. Standardvärdet är 3. Minimivärdet är 1. Maximalt värde är 10. Int
httpGet HTTPGet anger http-begäran som ska utföras. ContainerAppProbeHttpGet
initialDelaySeconds Antal sekunder efter att containern har startats innan liveness-avsökningar initieras. Minimivärdet är 1. Maximalt värde är 60. Int
periodSeconds Hur ofta (i sekunder) avsökningen ska utföras. Standardvärdet är 10 sekunder. Minimivärdet är 1. Maximalt värde är 240. Int
successThreshold Minsta lyckade resultat i följd för att avsökningen ska anses vara lyckad efter att den har misslyckats. Standardvärdet är 1. Måste vara 1 för liveness och start. Minimivärdet är 1. Maximalt värde är 10. Int
tcpSocket TCPSocket anger en åtgärd som involverar en TCP-port. TCP-krokar stöds inte ännu. ContainerAppProbeTcpSocket
terminationGracePeriodSeconds Valfri varaktighet i sekunder podden måste avslutas korrekt vid avsökningsfel. Respitperioden är varaktigheten i sekunder efter att processerna som körs i podden har skickats en avslutningssignal och den tid då processerna med två skäl stoppas med en killsignal. Ange det här värdet längre än den förväntade rensningstiden för din process. Om det här värdet är noll används poddens avslutningGracePeriodSeconds. Annars åsidosätter det här värdet värdet som tillhandahålls av poddspecifikationen. Värdet måste vara ett heltal som inte är negativt. Värdet noll anger stopp direkt via avlivningssignalen (ingen möjlighet att stänga av). Det här är ett alfafält och kräver aktivering av funktionsporten ProbeTerminationGracePeriod. Maximalt värde är 3 600 sekunder (1 timme) Int
timeoutSeconds Antal sekunder efter vilken avsökningen överskrider tidsgränsen. Standardvärdet är 1 sekund. Minimivärdet är 1. Maximalt värde är 240. Int
typ Typ av avsökning. "Livskraft"
"Beredskap"
"Start"

ContainerAppProbeHttpGet

Namn Beskrivning Värde
värd Värdnamn att ansluta till, standardvärdet för podd-IP-adressen. Du vill förmodligen ange "Värd" i httpHeaders i stället. sträng
httpHeaders Anpassade rubriker som ska anges i begäran. HTTP tillåter upprepade rubriker. ContainerAppProbeHttpGetHttpHeadersItem[]
stig Sökväg till åtkomst på HTTP-servern. sträng
hamn Namn eller nummer på porten som ska kommas åt i containern. Talet måste ligga i intervallet 1 till 65535. Namnet måste vara en IANA_SVC_NAME. int (krävs)
schema Schema som ska användas för att ansluta till värden. Standardvärdet är HTTP. "HTTP"
"HTTPS"

ContainerAppProbeHttpGetHttpHeadersItem

Namn Beskrivning Värde
Namn Namn på rubrikfält sträng (krävs)
värde Värdet för sidhuvudfält sträng (krävs)

ContainerAppProbeTcpSocket

Namn Beskrivning Värde
värd Valfritt: Värdnamn att ansluta till, standardvärdet för podd-IP-adressen. sträng
hamn Nummer eller namn på porten som ska kommas åt i containern. Talet måste ligga i intervallet 1 till 65535. Namnet måste vara en IANA_SVC_NAME. int (krävs)

ContainerResources

Namn Beskrivning Värde
processor Nödvändig processor i kärnor, t.ex. 0,5 Ange ett decimalvärde som en sträng. int- eller json-decimal
minne Nödvändigt minne, t.ex. "250 Mb" sträng

VolumeMount

Namn Beskrivning Värde
mountPath Sökväg i containern där volymen ska monteras. Får inte innehålla :. sträng
subPath Sökväg inom volymen som containerns volym ska monteras från. Standardvärdet är "" (volymens rot). sträng
volumeName Detta måste matcha namnet på en volym. sträng

InitContainer

Namn Beskrivning Värde
args Kommandoargument för containerstart. string[]
befallning Startkommando för container. string[]
Env Miljövariabler för containrar. EnvironmentVar[]
bild Containeravbildningstagg. sträng
Namn Anpassat containernamn. sträng
Resurser Krav för containerresurser. ContainerResources
volumeMounts Containervolymmonteringar. VolumeMount[]

Skala

Namn Beskrivning Värde
maxReplicas Valfri. Maximalt antal containerrepliker. Standardvärdet är 10 om det inte anges. Int
minReplicas Valfri. Minsta antal containerrepliker. Int
reglemente Skalningsregler. ScaleRule[]

ScaleRule

Namn Beskrivning Värde
azureQueue Azure Queue-baserad skalning. QueueScaleRule
sed Anpassad skalningsregel. CustomScaleRule
http HTTP-begärandensbaserad skalning. HttpScaleRule
Namn Namn på skalningsregel sträng
Tcp Tcp begär baserad skalning. TcpScaleRule

QueueScaleRule

Namn Beskrivning Värde
Auth Autentiseringshemligheter för köskalningsregeln. ScaleRuleAuth[]
queueLength Kölängd. Int
queueName Könamn. sträng

ScaleRuleAuth

Namn Beskrivning Värde
secretRef Namnet på hemligheten som autentiseringsparamerna ska hämtas från. sträng
triggerParameter Utlösarparameter som använder hemligheten sträng

CustomScaleRule

Namn Beskrivning Värde
Auth Autentiseringshemligheter för den anpassade skalningsregeln. ScaleRuleAuth[]
metadata Metadataegenskaper för att beskriva en anpassad skalningsregel. CustomScaleRuleMetadata
typ Typ av anpassad skalningsregel
t.ex. azure-servicebus, redis osv.
sträng

CustomScaleRuleMetadata

Namn Beskrivning Värde
{anpassad egenskap} sträng

HttpScaleRule

Namn Beskrivning Värde
Auth Autentiseringshemligheter för den anpassade skalningsregeln. ScaleRuleAuth[]
metadata Metadataegenskaper för att beskriva http-skalningsregel. HttpScaleRuleMetadata

HttpScaleRuleMetadata

Namn Beskrivning Värde
{anpassad egenskap} sträng

TcpScaleRule

Namn Beskrivning Värde
Auth Autentiseringshemligheter för tcp-skalningsregeln. ScaleRuleAuth[]
metadata Metadataegenskaper för att beskriva tcp-skalningsregeln. TcpScaleRuleMetadata

TcpScaleRuleMetadata

Namn Beskrivning Värde
{anpassad egenskap} sträng

ServiceBind

Namn Beskrivning Värde
Namn Namnet på tjänstbindningen sträng
serviceId Resurs-ID för måltjänsten sträng

Volym

Namn Beskrivning Värde
mountOptions Monteringsalternativ som används vid montering av AzureFile. Måste vara en kommaavgränsad sträng. sträng
Namn Volymnamn. sträng
Hemligheter Lista över hemligheter som ska läggas till i volymen. Om inga hemligheter anges läggs alla hemligheter i samlingen till i volymen. SecretVolumeItem[]
storageName Namnet på lagringsresursen. Du behöver inte ange EmptyDir och Secret. sträng
storageType Lagringstyp för volymen. Om det inte anges använder du EmptyDir. "AzureFile"
"EmptyDir"
"Hemlighet"

SecretVolumeItem

Namn Beskrivning Värde
stig Sökväg till projekthemlighet till. Om ingen sökväg anges är sökvägen standard för namnet på hemligheten som anges i secretRef. sträng
secretRef Namnet på containerappens hemlighet som det hemliga värdet ska hämtas från. sträng