Share via


Microsoft.App containerApps

Bicep-Ressourcendefinition

Der Ressourcentyp containerApps kann mit Vorgängen bereitgestellt werden, die auf Folgendes abzielen:

Eine Liste der geänderten Eigenschaften in jeder API-Version finden Sie im Änderungsprotokoll.

Ressourcenformat

Um eine Microsoft.App/containerApps-Ressource zu erstellen, fügen Sie der Vorlage den folgenden Bicep hinzu.

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

Eigenschaftswerte

containerApps

Name BESCHREIBUNG Wert
name Der Ressourcenname Zeichenfolge (erforderlich)

Zeichenlimit: 2-32

Gültige Zeichen:
Kleinbuchstaben, Zahlen und Bindestriche..

Muss mit einem Buchstaben beginnen und mit einem alphanumerischen Zeichen enden.
location Der geografische Standort, an dem sich die Ressource befindet Zeichenfolge (erforderlich)
tags Ressourcentags. Wörterbuch der Tagnamen und -werte. Weitere Informationen finden Sie unter Tags in Vorlagen.
extendedLocation Der komplexe Typ des erweiterten Standorts. ExtendedLocation
Identität Verwaltete Identitäten für die Container-App, um mit anderen Azure-Diensten zu interagieren, ohne Geheimnisse oder Anmeldeinformationen im Code beizubehalten. ManagedServiceIdentity
managedBy Die vollqualifizierte Ressourcen-ID der Ressource, die diese Ressource verwaltet. Gibt an, ob diese Ressource von einer anderen Azure-Ressource verwaltet wird. Wenn dies vorhanden ist, löscht die Bereitstellung im vollständigen Modus die Ressource nicht, wenn sie aus der Vorlage entfernt wird, da sie von einer anderen Ressource verwaltet wird. Zeichenfolge
properties Ressourcenspezifische Eigenschaften für ContainerApp ContainerAppProperties

ExtendedLocation

Name BESCHREIBUNG Wert
name Der Name des erweiterten Speicherorts. Zeichenfolge
type Der Typ des erweiterten Speicherorts. "CustomLocation"

ManagedServiceIdentity

Name BESCHREIBUNG Wert
type Typ der verwalteten Dienstidentität (wobei sowohl der SystemAssigned- als auch der UserAssigned-Typ zulässig sind). "Keine"
"SystemAssigned"
'SystemAssigned,UserAssigned'
"UserAssigned" (erforderlich)
userAssignedIdentities Der Satz von benutzerseitig zugewiesenen Identitäten, die der Ressource zugeordnet sind. Bei den userAssignedIdentities-Wörterbuchschlüsseln handelt es sich um ARM-Ressourcen-IDs im Format :/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Die Wörterbuchwerte können leere Objekte ({}) in Anforderungen sein. UserAssignedIdentities

UserAssignedIdentities

Name BESCHREIBUNG Wert
{angepasste Eigenschaft} UserAssignedIdentity

UserAssignedIdentity

Dieses Objekt enthält keine Eigenschaften, die während der Bereitstellung festgelegt werden sollen. Alle Eigenschaften sind ReadOnly.

ContainerAppProperties

Name BESCHREIBUNG Wert
Konfiguration Konfigurationseigenschaften für Container-Apps ohne Versionsangabe. Configuration
environmentId Ressourcen-ID der Umgebung. Zeichenfolge
managedEnvironmentId Veraltet. Ressourcen-ID der Umgebung der Container-App. Zeichenfolge
Vorlage Anwendungsdefinition der Container-App mit Versionsangabe. Vorlage
workloadProfileName Workloadprofilname, der für die Ausführung der Container-App angeheften werden soll. Zeichenfolge

Konfiguration

Name BESCHREIBUNG Wert
activeRevisionsMode ActiveRevisionsMode steuert, wie aktive Revisionen für die Container-App behandelt werden:
{list} {item} Mehrfach: Mehrere Revisionen können aktiv sein. {/item} {item} Single: Es kann jeweils nur eine Revision aktiv sein. Revisionsgewichtungen können in diesem Modus nicht verwendet werden. Wenn kein Wert angegeben wird, ist dies der Standardwert. {/item} {/list}
"Multiple"
"Single"
dapr Dapr-Konfiguration für die Container-App. Dapr
Eindringen Eingangskonfigurationen. Eingehend
maxInactiveRevisions Optional. Max. inaktive Revisionen, die eine Container-App haben kann. INT
registries Sammlung von Anmeldeinformationen für die private Containerregistrierung für Container, die von der Container-App verwendet werden RegistryCredentials[]
secrets Sammlung von Geheimnissen, die von einer Container-App verwendet werden Geheimnis[]
Dienst Container-App als Entwicklungscontainer-App Service Service

Dapr

Name BESCHREIBUNG Wert
appId Dapr-Anwendungsbezeichner Zeichenfolge
appPort Teilt Dapr mit, an welchem Port Ihre Anwendung lauscht. INT
appProtocol Teilt Dapr mit, welches Protokoll Ihre Anwendung verwendet. Gültige Optionen sind http und grpc. Der Standardwert ist http. "grpc"
"http"
enableApiLogging Aktiviert die API-Protokollierung für das Dapr-Sidecar bool
enabled Boolescher Wert, der angibt, ob das Dapr-Seitenfahrzeug aktiviert ist bool
httpMaxRequestSize Erhöhen der maximalen Größe des Http- und grpc-Serverparameters für den Anforderungstext in MB, um das Hochladen großer Dateien zu verarbeiten. Der Standardwert ist 4 MB. INT
httpReadBufferSize Dapr maximale Größe des HTTP-Headerlesepuffers in KB, der beim Senden von Multi-KB-Headern behandelt werden soll. Der Standardwert ist 65 KB. INT
logLevel Legt die Protokollebene für das Dapr-Sidecar fest. Zulässige Werte sind debug, info, warn, error. Der Standardwert ist info. "Debuggen"
"Fehler"
"Info"
"warnen"

Eingehende Daten

Name BESCHREIBUNG Wert
additionalPortMappings Einstellungen zum Verfügbarmachen zusätzlicher Ports in der Container-App IngressPortMapping[]
allowInsecure Bool, der angibt, ob HTTP-Verbindungen mit zulässig sind. Wenn auf "False" festgelegt ist, werden HTTP-Verbindungen automatisch an HTTPS-Verbindungen umgeleitet. bool
clientCertificateMode Clientzertifikatmodus für die mTLS-Authentifizierung. Ignore gibt an, dass der Server das Clientzertifikat bei der Weiterleitung löscht. Accept gibt an, dass der Server das Clientzertifikat weiterleitet, aber kein Clientzertifikat erfordert. Erforderlich gibt an, dass der Server ein Clientzertifikat erfordert. "Akzeptieren"
"ignorieren"
"erforderlich"
corsPolicy CORS-Richtlinie für Container-App CorsPolicy
customDomains benutzerdefinierte Domänenbindungen für Container Apps-Hostnamen. CustomDomain[]
exposedPort Verfügbar gemachter Port in Containern für TCP-Datenverkehr aus eingehendem Datenverkehr INT
external Bool, der angibt, ob die App einen externen HTTP-Endpunkt verfügbar macht bool
ipSecurityRestrictions Regeln zum Einschränken eingehender IP-Adressen. IpSecurityRestrictionRule[]
stickySessions Kurzsitzungen für den einzelnen Revisionsmodus IngressStickySessions
targetPort Zielport in Containern für Eingehenden Datenverkehr INT
targetPortHttpScheme Ob eine HTTP-App auf HTTP oder HTTPS lauscht "http"
"https"
traffic Datenverkehrsgewichtung für App-Revisionen TrafficWeight[]
Transport Protokoll für eingehenden Transport "auto"
"http"
"http2"
"tcp"

IngressPortMapping

Name BESCHREIBUNG Wert
exposedPort Gibt den verfügbar gemachten Port für den Zielport an. Wenn nicht angegeben, wird standardmäßig der Zielport verwendet. INT
external Gibt an, ob auf den App-Port außerhalb der Umgebung zugegriffen werden kann. bool (erforderlich)
targetPort Gibt an, an ob der Container des Portbenutzers lauscht. int (erforderlich)

CorsPolicy

Name BESCHREIBUNG Wert
allowCredentials Gibt an, ob die Ressource Anmeldeinformationen zulässt. bool
allowedHeaders Gibt den Inhalt für den Header access-control-allow-headers an. string[]
allowedMethods Gibt den Inhalt für den Access-Control-allow-methods-Header an. string[]
allowedOrigins Gibt den Inhalt für den Header access-control-allow-origins an. string[] (erforderlich)
exposeHeaders Gibt den Inhalt für den access-control-expose-headers-Header an. string[]
maxAge Gibt den Inhalt für den access-control-max-age-Header an. INT

CustomDomain

Name BESCHREIBUNG Wert
Bindingtype Custom Domain Bindungstyp. "Deaktiviert"
"SniEnabled"
certificateId Ressourcen-ID des Zertifikats, das an diesen Hostnamen gebunden werden soll. Muss in der verwalteten Umgebung vorhanden sein. Zeichenfolge
name Hostname. Zeichenfolge (erforderlich)

IpSecurityRestrictionRule

Name BESCHREIBUNG Wert
action Regeln zulassen oder verweigern, um für eingehende IP-Adressen zu bestimmen. Hinweis: Regeln können nur aus ALL Allow oder ALL Deny bestehen. "Zulassen"
"Verweigern" (erforderlich)
description Beschreiben sie die IP-Einschränkungsregel, die an die container-app gesendet wird. Dies ist ein optionales Feld. Zeichenfolge
ipAddressRange CIDR-Notation zur Übereinstimmung mit eingehender IP-Adresse Zeichenfolge (erforderlich)
name Name für die IP-Einschränkungsregel. Zeichenfolge (erforderlich)

IngressStickySessions

Name BESCHREIBUNG Wert
affinity Affinität zu klebrigen Sitzungen "keine"
"klebrig"

TrafficWeight

Name BESCHREIBUNG Wert
label Ordnet eine Verkehrsbezeichnung einer Revision zu Zeichenfolge
latestRevision Gibt an, dass die Datenverkehrsgewichtung zu einer aktuellen stabilen Revision gehört. bool
revisionName Name einer Revision Zeichenfolge
weight Einer Revision zugewiesene Verkehrsgewichtung INT

RegistryCredentials

Name BESCHREIBUNG Wert
Identität Eine verwaltete Identität, die zur Authentifizierung bei Azure Container Registry verwendet werden soll. Verwenden Sie für benutzerseitig zugewiesene Identitäten die vollständige benutzerseitig zugewiesene Identitätsressourcen-ID. Verwenden Sie für systemseitig zugewiesene Identitäten "system" Zeichenfolge
passwordSecretRef Der Name des Geheimnisses, das das Anmeldekennwort für die Registrierung enthält Zeichenfolge
server ContainerRegistrierungsserver Zeichenfolge
username Benutzername für Containerregistrierung Zeichenfolge

`Secret`

Name BESCHREIBUNG Wert
Identität Ressourcen-ID einer verwalteten Identität zur Authentifizierung bei Azure Key Vault oder System zur Verwendung einer systemseitig zugewiesenen Identität. Zeichenfolge
keyVaultUrl Azure Key Vault-URL, die auf das Geheimnis verweist, auf das die Container-App verweist. Zeichenfolge
name Geheimer Name. Zeichenfolge
value Geheimer Wert. Zeichenfolge

Einschränkungen:
Vertraulicher Wert. Übergeben Sie als sicheren Parameter.

Dienst

Name BESCHREIBUNG Wert
type Dev ContainerApp-Diensttyp Zeichenfolge (erforderlich)

Vorlage

Name BESCHREIBUNG Wert
containers Liste der Containerdefinitionen für die Container-App. Container[]
initContainers Liste der spezialisierten Container, die vor App-Containern ausgeführt werden. InitContainer[]
revisionSuffix Benutzerfreundliches Suffix, das an den Revisionsnamen angefügt wird Zeichenfolge
Skalierung Skalierungseigenschaften für die Container-App. Skalieren
serviceBinds Liste der an die App gebundenen Container-App-Dienste ServiceBind[]
terminationGracePeriodSeconds Optionale Dauer in Sekunden, die die Container-App-Instanz ordnungsgemäß beenden muss. Der Wert muss eine nicht negative ganze Zahl sein. Der Wert 0 gibt an, dass sofort über das Kill-Signal angehalten wird (keine Möglichkeit zum Herunterfahren). Wenn dieser Wert gleich null ist, wird stattdessen der standardmäßige Nachfristzeitraum verwendet. Legen Sie für diesen Wert eine längere Zeit als die erwartete Bereinigungszeit für Ihren Prozess fest. Der Standardwert beträgt 30 Sekunden. INT
volumes Liste der Volumedefinitionen für die Container-App. Volume[]

Container

Name BESCHREIBUNG Wert
args Containerstartbefehlsargumente. string[]
command Containerstartbefehl. string[]
env Containerumgebungsvariablen. EnvironmentVar[]
image Containerimagetag. Zeichenfolge
name Benutzerdefinierter Containername. Zeichenfolge
probes Liste der Tests für den Container. ContainerAppProbe[]
ressourcen Anforderungen an Containerressourcen. ContainerResources
volumeMounts Bereitstellungen von Containervolumes. VolumeMount[]

EnvironmentVar

Name BESCHREIBUNG Wert
name Umgebungsvariablenname. Zeichenfolge
secretRef Name des geheimen Container-App-Geheimnisses, aus dem der Wert der Umgebungsvariablen abgerufen werden soll. Zeichenfolge
value Nicht geheimer Umgebungsvariablenwert. Zeichenfolge

ContainerAppProbe

Name BESCHREIBUNG Wert
failureThreshold Minimale aufeinanderfolgende Fehler, damit der Test nach dem Erfolgreichen als fehlgeschlagen gilt. Der Standardwert ist 3. Der Mindestwert ist 1. Der maximale Wert ist 10. INT
httpGet HTTPGet gibt die auszuführende HTTP-Anforderung an. ContainerAppProbeHttpGet
initialDelaySeconds Die Anzahl der Sekunden, die nach dem Start des Containers vergehen, bevor Livetests initiiert werden. Der Mindestwert ist 1. Der Maximalwert ist 60. INT
periodSeconds Gibt an, wie häufig (in Sekunden) ein Test durchgeführt werden soll. Der Standardwert ist 10 Sekunden. Der Mindestwert ist 1. Der Höchstwert ist 240. INT
successThreshold Minimale aufeinanderfolgende Erfolge, damit der Test nach einem Fehler als erfolgreich angesehen wird. Der Standardwert lautet 1. Muss 1 sein, um live zu sein und zu starten. Der Mindestwert ist 1. Der maximale Wert ist 10. INT
tcpSocket TCPSocket gibt eine Aktion mit einem TCP-Port an. TCP-Hooks werden noch nicht unterstützt. ContainerAppProbeTcpSocket
terminationGracePeriodSeconds Optionale Dauer in Sekunden, die der Pod bei einem Testfehler ordnungsgemäß beenden muss. Die Toleranzperiode ist die Dauer in Sekunden, nachdem die im Pod ausgeführten Prozesse ein Beendigungssignal gesendet haben, und der Zeitpunkt, zu dem die Prozesse mit einem Kill-Signal erzwungen angehalten werden. Legen Sie für diesen Wert eine längere Zeit als die erwartete Bereinigungszeit für Ihren Prozess fest. Wenn dieser Wert null ist, wird der TerminGracePeriodSeconds des Pods verwendet. Andernfalls überschreibt dieser Wert den von der Podspezifikation bereitgestellten Wert. Der Wert muss eine nicht negative ganze Zahl sein. Der Wert 0 gibt an, dass sofort über das Kill-Signal angehalten wird (keine Gelegenheit zum Herunterfahren). Dies ist ein Alphafeld und erfordert die Aktivierung des Featuregates "ProbeTerminationGracePeriod". Maximaler Wert ist 3600 Sekunden (1 Stunde) INT
timeoutSeconds Anzahl der Sekunden, nach denen das Zeitüberschreitungsintervall für den Test aufgetreten ist. Der Standardwert ist 1 Sekunde. Der Mindestwert ist 1. Der Höchstwert ist 240. INT
Typ Der Typ des Tests. "Lebendigkeit"
"Bereitschaft"
"Start"

ContainerAppProbeHttpGet

Name BESCHREIBUNG Wert
host Hostname, mit dem eine Verbindung hergestellt werden soll, ist standardmäßig die Pod-IP-Adresse. Sie möchten wahrscheinlich stattdessen "Host" in httpHeaders festlegen. Zeichenfolge
httpHeaders Benutzerdefinierte Header, die in der Anforderung festgelegt werden sollen. HTTP lässt wiederholte Header zu. ContainerAppProbeHttpGetHttpHeadersItem[]
path Pfad zum Zugriff auf den HTTP-Server. Zeichenfolge
port Name oder Nummer des Ports, auf den für den Container zugegriffen werden soll. Die Zahl muss im Bereich 1 bis 65535 liegen. Name muss ein IANA_SVC_NAME sein. int (erforderlich)
scheme Schema, das zum Herstellen einer Verbindung mit dem Host verwendet werden soll. Der Standardwert ist HTTP. "HTTP"
"HTTPS"

ContainerAppProbeHttpGetHttpHeadersItem

Name BESCHREIBUNG Wert
name Der Name des Kopfzeilenfelds Zeichenfolge (erforderlich)
value Der Wert des Headerfelds Zeichenfolge (erforderlich)

ContainerAppProbeTcpSocket

Name BESCHREIBUNG Wert
host Optional: Hostname, mit dem eine Verbindung hergestellt werden soll, ist standardmäßig die Pod-IP-Adresse. Zeichenfolge
port Nummer oder Name des Ports, auf den auf den Container zugegriffen werden soll. Die Zahl muss im Bereich 1 bis 65535 liegen. Name muss ein IANA_SVC_NAME sein. int (erforderlich)

ContainerResources

Name BESCHREIBUNG Wert
cpu Erforderliche CPU in Kernen, z. B. 0.5 Um einen Dezimalwert anzugeben, verwenden Sie die Json()- Funktion. int oder json dezimal
Arbeitsspeicher Erforderlicher Arbeitsspeicher, z. B. "250MB" Zeichenfolge

VolumeMount

Name BESCHREIBUNG Wert
mountPath Pfad innerhalb des Containers, an dem das Volume eingebunden werden soll. Darf nicht ":" enthalten. Zeichenfolge
Untergeordnete Pfad innerhalb des Volumes, von dem das Volume des Containers eingebunden werden soll. Standardmäßig ist "" (Stammverzeichnis des Volumes). Zeichenfolge
volumeName Dies muss mit dem Namen eines Volumes übereinstimmen. Zeichenfolge

InitContainer

Name BESCHREIBUNG Wert
args Container start-Befehlsargumente. string[]
command Containerstartbefehl. string[]
env Containerumgebungsvariablen. EnvironmentVar[]
image Containerimagetag. Zeichenfolge
name Benutzerdefinierter Containername. Zeichenfolge
ressourcen Anforderungen an Containerressourcen. ContainerResources
volumeMounts Containervolumemounts werden bereitgestellt. VolumeMount[]

Skalieren

Name BESCHREIBUNG Wert
maxReplicas Optional. Maximale Anzahl von Containerreplikaten. Standardwert ist 10, wenn nicht festgelegt. INT
minReplicas Optional. Mindestanzahl von Containerreplikaten. INT
rules Skalierungsregeln. ScaleRule[]

ScaleRule

Name BESCHREIBUNG Wert
azureQueue Azure Queue-basierte Skalierung. QueueScaleRule
custom Benutzerdefinierte Skalierungsregel. CustomScaleRule
http AUF HTTP-Anforderungen basierende Skalierung. HttpScaleRule
name Name der Skalierungsregel Zeichenfolge
tcp Tcp-Anforderungen basierende Skalierung. TcpScaleRule

QueueScaleRule

Name BESCHREIBUNG Wert
auth Authentifizierungsgeheimnisse für die Warteschlangenskalierungsregel. ScaleRuleAuth[]
queueLength Warteschlangenlänge. INT
queueName Warteschlangenname. Zeichenfolge

ScaleRuleAuth

Name BESCHREIBUNG Wert
secretRef Name des Geheimnisses, aus dem die Authentifizierungsparameter abgerufen werden sollen. Zeichenfolge
triggerParameter Triggerparameter, der das Geheimnis verwendet Zeichenfolge

CustomScaleRule

Name BESCHREIBUNG Wert
auth Authentifizierungsgeheimnisse für die benutzerdefinierte Skalierungsregel. ScaleRuleAuth[]
metadata Metadateneigenschaften zum Beschreiben einer benutzerdefinierten Skalierungsregel. CustomScaleRuleMetadata
Typ Typ der benutzerdefinierten Skalierungsregel
z. B. azure-servicebus, redis etc.
Zeichenfolge

CustomScaleRuleMetadata

Name BESCHREIBUNG Wert
{angepasste Eigenschaft} Zeichenfolge

HttpScaleRule

Name BESCHREIBUNG Wert
auth Authentifizierungsgeheimnisse für die benutzerdefinierte Skalierungsregel. ScaleRuleAuth[]
metadata Metadateneigenschaften zum Beschreiben der HTTP-Skalierungsregel. HttpScaleRuleMetadata

HttpScaleRuleMetadata

Name BESCHREIBUNG Wert
{angepasste Eigenschaft} Zeichenfolge

TcpScaleRule

Name BESCHREIBUNG Wert
auth Authentifizierungsgeheimnisse für die TCP-Skalierungsregel. ScaleRuleAuth[]
metadata Metadateneigenschaften zum Beschreiben der TCP-Skalierungsregel. TcpScaleRuleMetadata

TcpScaleRuleMetadata

Name BESCHREIBUNG Wert
{angepasste Eigenschaft} Zeichenfolge

ServiceBind

Name BESCHREIBUNG Wert
clientType Typ des Clients, der zum Herstellen einer Verbindung mit dem Dienst verwendet werden soll Zeichenfolge
customizedKeys Angepasste Schlüssel zum Anpassen eingefügter Werte an die App ServiceBindCustomizedKeys
name Name der Dienstbindung Zeichenfolge
serviceId Ressourcen-ID des Zieldiensts Zeichenfolge

ServiceBindCustomizedKeys

Name BESCHREIBUNG Wert
{angepasste Eigenschaft} Zeichenfolge

Volume

Name BESCHREIBUNG Wert
mountOptions Einbindungsoptionen, die beim Einbinden der Azure-Dateifreigabe oder NFS-Azure-Dateifreigabe verwendet werden. Muss eine durch Trennzeichen getrennte Zeichenfolge sein. Zeichenfolge
name Volumename. Zeichenfolge
secrets Liste der Geheimnisse, die dem Volume hinzugefügt werden sollen. Wenn keine Geheimnisse bereitgestellt werden, werden alle Geheimnisse in der Sammlung dem Volume hinzugefügt. SecretVolumeItem[]
storageName Name der Speicherressource. Es ist nicht erforderlich, emptyDir und Secret anzugeben. Zeichenfolge
Speichertyp Speichertyp für das Volume. Wenn nicht angegeben, verwenden Sie EmptyDir. "AzureFile"
'EmptyDir'
'NfsAzureFile'
"Geheimnis"

SecretVolumeItem

Name BESCHREIBUNG Wert
path Pfad zum Projektgeheimnis. Wenn kein Pfad angegeben wird, wird der Pfad standardmäßig auf den Namen des in secretRef aufgeführten Geheimnisses festgelegt. Zeichenfolge
secretRef Name des geheimen Container-App-Geheimnisses, aus dem der Geheimniswert abgerufen werden soll. Zeichenfolge

Schnellstartvorlagen

In den folgenden Schnellstartvorlagen wird dieser Ressourcentyp bereitgestellt.

Vorlage BESCHREIBUNG
Erstellt eine Container-App und eine Umgebung mit Registrierung.

Bereitstellen in Azure
Erstellen Sie eine Container-App-Umgebung mit einer einfachen Container-App aus einer Azure Container Registry. Außerdem wird ein Log Analytics-Arbeitsbereich zum Speichern von Protokollen bereitgestellt.
Erstellt eine Zwei-Container-App mit einer Container-App-Umgebung

Bereitstellen in Azure
Erstellen Sie eine Umgebung mit zwei Container-Apps mit einer einfachen Container-App. Außerdem wird ein Log Analytics-Arbeitsbereich zum Speichern von Protokollen bereitgestellt.
Erstellt eine Container-App in einer Container-App-Umgebung

Bereitstellen in Azure
Erstellen Sie eine Container-App-Umgebung mit einer einfachen Container-App. Außerdem wird ein Log Analytics-Arbeitsbereich zum Speichern von Protokollen bereitgestellt.
Erstellt eine Container-App mit einer definierten HTTP-Skalierungsregel

Bereitstellen in Azure
Erstellen Sie eine Container-App-Umgebung mit einer einfachen Container-App, die basierend auf HTTP-Datenverkehr skaliert wird.
Erstellt eine externe Container-App-Umgebung mit einem VNET

Bereitstellen in Azure
Erstellt eine externe Container-App-Umgebung mit einem VNET.
Erstellt eine interne Container-App-Umgebung mit einem VNET

Bereitstellen in Azure
Erstellt eine interne Container-App-Umgebung mit einem VNET.

Ressourcendefinition mit einer ARM-Vorlage

Der Ressourcentyp containerApps kann mit Vorgängen bereitgestellt werden, die auf Folgendes abzielen:

Eine Liste der geänderten Eigenschaften in jeder API-Version finden Sie im Änderungsprotokoll.

Ressourcenformat

Um eine Microsoft.App/containerApps Ressource zu erstellen, fügen Sie der Vorlage den folgenden JSON-Code hinzu.

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

Eigenschaftswerte

containerApps

Name BESCHREIBUNG Wert
type Der Ressourcentyp "Microsoft.App/containerApps"
apiVersion Die Version der Ressourcen-API "2023-11-02-preview"
name Der Ressourcenname Zeichenfolge (erforderlich)

Zeichenlimit: 2-32

Gültige Zeichen:
Kleinbuchstaben, Zahlen und Bindestriche..

Muss mit einem Buchstaben beginnen und mit einem alphanumerischen Zeichen enden.
location Der geografische Standort, an dem sich die Ressource befindet Zeichenfolge (erforderlich)
tags Ressourcentags. Wörterbuch der Tagnamen und -werte. Weitere Informationen finden Sie unter Tags in Vorlagen.
extendedLocation Der komplexe Typ des erweiterten Standorts. ExtendedLocation
Identität Verwaltete Identitäten für die Container-App, um mit anderen Azure-Diensten zu interagieren, ohne Geheimnisse oder Anmeldeinformationen im Code beizubehalten. ManagedServiceIdentity
managedBy Die vollqualifizierte Ressourcen-ID der Ressource, die diese Ressource verwaltet. Gibt an, ob diese Ressource von einer anderen Azure-Ressource verwaltet wird. Wenn dies vorhanden ist, löscht die Bereitstellung im vollständigen Modus die Ressource nicht, wenn sie aus der Vorlage entfernt wird, da sie von einer anderen Ressource verwaltet wird. Zeichenfolge
properties Ressourcenspezifische Eigenschaften für ContainerApp ContainerAppProperties

ExtendedLocation

Name BESCHREIBUNG Wert
name Der Name des erweiterten Speicherorts. Zeichenfolge
type Der Typ des erweiterten Speicherorts. "CustomLocation"

ManagedServiceIdentity

Name BESCHREIBUNG Wert
type Typ der verwalteten Dienstidentität (wobei sowohl der SystemAssigned- als auch der UserAssigned-Typ zulässig sind). "Keine"
"SystemAssigned"
'SystemAssigned,UserAssigned'
"UserAssigned" (erforderlich)
userAssignedIdentities Der Satz von benutzerseitig zugewiesenen Identitäten, die der Ressource zugeordnet sind. Bei den userAssignedIdentities-Wörterbuchschlüsseln handelt es sich um ARM-Ressourcen-IDs im Format :/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Die Wörterbuchwerte können leere Objekte ({}) in Anforderungen sein. UserAssignedIdentities

UserAssignedIdentities

Name BESCHREIBUNG Wert
{angepasste Eigenschaft} UserAssignedIdentity

UserAssignedIdentity

Dieses Objekt enthält keine Eigenschaften, die während der Bereitstellung festgelegt werden sollen. Alle Eigenschaften sind ReadOnly.

ContainerAppProperties

Name BESCHREIBUNG Wert
Konfiguration Konfigurationseigenschaften für Container-Apps ohne Versionsangabe. Configuration
environmentId Ressourcen-ID der Umgebung. Zeichenfolge
managedEnvironmentId Veraltet. Ressourcen-ID der Umgebung der Container-App. Zeichenfolge
Vorlage Anwendungsdefinition der Container-App mit Versionsangabe. Vorlage
workloadProfileName Workloadprofilname, der für die Ausführung der Container-App angeheften werden soll. Zeichenfolge

Konfiguration

Name BESCHREIBUNG Wert
activeRevisionsMode ActiveRevisionsMode steuert, wie aktive Revisionen für die Container-App behandelt werden:
{list} {item} Mehrfach: Mehrere Revisionen können aktiv sein. {/item} {item} Single: Es kann jeweils nur eine Revision aktiv sein. Revisionsgewichtungen können in diesem Modus nicht verwendet werden. Wenn kein Wert angegeben wird, ist dies der Standardwert. {/item} {/list}
"Multiple"
"Single"
dapr Dapr-Konfiguration für die Container-App. Dapr
Eindringen Eingangskonfigurationen. Eingehend
maxInactiveRevisions Optional. Max. inaktive Revisionen, die eine Container-App haben kann. INT
registries Sammlung von Anmeldeinformationen für die private Containerregistrierung für Container, die von der Container-App verwendet werden RegistryCredentials[]
secrets Sammlung von Geheimnissen, die von einer Container-App verwendet werden Geheimnis[]
Dienst Container-App als Entwicklungscontainer-App Service Service

Dapr

Name BESCHREIBUNG Wert
appId Dapr-Anwendungsbezeichner Zeichenfolge
appPort Teilt Dapr mit, an welchem Port Ihre Anwendung lauscht. INT
appProtocol Teilt Dapr mit, welches Protokoll Ihre Anwendung verwendet. Gültige Optionen sind http und grpc. Der Standardwert ist http. "grpc"
"http"
enableApiLogging Aktiviert die API-Protokollierung für das Dapr-Sidecar bool
enabled Boolescher Wert, der angibt, ob das Dapr-Seitenfahrzeug aktiviert ist bool
httpMaxRequestSize Erhöhen der maximalen Größe des Http- und grpc-Serverparameters für den Anforderungstext in MB, um das Hochladen großer Dateien zu verarbeiten. Der Standardwert ist 4 MB. INT
httpReadBufferSize Dapr maximale Größe des HTTP-Headerlesepuffers in KB, der beim Senden von Multi-KB-Headern behandelt werden soll. Der Standardwert ist 65 KB. INT
logLevel Legt die Protokollebene für das Dapr-Sidecar fest. Zulässige Werte sind debug, info, warn, error. Der Standardwert ist info. "Debuggen"
"Fehler"
"Info"
"warnen"

Eingehende Daten

Name BESCHREIBUNG Wert
additionalPortMappings Einstellungen zum Verfügbarmachen zusätzlicher Ports in der Container-App IngressPortMapping[]
allowInsecure Bool, der angibt, ob HTTP-Verbindungen mit zulässig sind. Wenn auf "False" festgelegt ist, werden HTTP-Verbindungen automatisch an HTTPS-Verbindungen umgeleitet. bool
clientCertificateMode Clientzertifikatmodus für die mTLS-Authentifizierung. Ignore gibt an, dass der Server das Clientzertifikat bei der Weiterleitung löscht. Accept gibt an, dass der Server das Clientzertifikat weiterleitet, aber kein Clientzertifikat erfordert. Erforderlich gibt an, dass der Server ein Clientzertifikat erfordert. "Akzeptieren"
"ignorieren"
"erforderlich"
corsPolicy CORS-Richtlinie für Container-App CorsPolicy
customDomains benutzerdefinierte Domänenbindungen für Container Apps-Hostnamen. CustomDomain[]
exposedPort Verfügbar gemachter Port in Containern für TCP-Datenverkehr aus eingehendem Datenverkehr INT
external Bool, der angibt, ob die App einen externen HTTP-Endpunkt verfügbar macht bool
ipSecurityRestrictions Regeln zum Einschränken eingehender IP-Adressen. IpSecurityRestrictionRule[]
stickySessions Kurzsitzungen für den einzelnen Revisionsmodus IngressStickySessions
targetPort Zielport in Containern für Eingehenden Datenverkehr INT
targetPortHttpScheme Ob eine HTTP-App auf HTTP oder HTTPS lauscht "http"
"https"
traffic Datenverkehrsgewichtung für App-Revisionen TrafficWeight[]
Transport Protokoll für eingehenden Transport "auto"
"http"
"http2"
"tcp"

IngressPortMapping

Name BESCHREIBUNG Wert
exposedPort Gibt den verfügbar gemachten Port für den Zielport an. Wenn nicht angegeben, wird standardmäßig der Zielport verwendet. INT
external Gibt an, ob auf den App-Port außerhalb der Umgebung zugegriffen werden kann. bool (erforderlich)
targetPort Gibt an, dass der Container des Portbenutzers lauscht. int (erforderlich)

CorsPolicy

Name BESCHREIBUNG Wert
allowCredentials Gibt an, ob die Ressource Anmeldeinformationen zulässt. bool
allowedHeaders Gibt den Inhalt für den Header access-control-allow-headers an. string[]
allowedMethods Gibt den Inhalt für den Header access-control-allow-methods an. string[]
allowedOrigins Gibt den Inhalt für den Header access-control-allow-origins an. string[] (erforderlich)
exposeHeaders Gibt den Inhalt für den Header access-control-expose-headers an. string[]
maxAge Gibt den Inhalt für den Access-Control-max-age-Header an. INT

CustomDomain

Name BESCHREIBUNG Wert
Bindingtype Custom Domain Bindungstyp. "Deaktiviert"
'SniEnabled'
certificateId Ressourcen-ID des Zertifikats, das an diesen Hostnamen gebunden werden soll. Muss in der verwalteten Umgebung vorhanden sein. Zeichenfolge
name Hostname. Zeichenfolge (erforderlich)

IpSecurityRestrictionRule

Name BESCHREIBUNG Wert
action Regeln zulassen oder verweigern, um für eingehende IP-Adressen zu bestimmen. Hinweis: Regeln können nur aus ALL Allow oder ALL Deny bestehen. "Zulassen"
"Verweigern" (erforderlich)
description Beschreiben sie die IP-Einschränkungsregel, die an die container-app gesendet wird. Dies ist ein optionales Feld. Zeichenfolge
ipAddressRange CIDR-Notation zur Übereinstimmung mit eingehender IP-Adresse Zeichenfolge (erforderlich)
name Name für die IP-Einschränkungsregel. Zeichenfolge (erforderlich)

IngressStickySessions

Name BESCHREIBUNG Wert
affinity Affinität zu klebrigen Sitzungen "keine"
"klebrig"

TrafficWeight

Name BESCHREIBUNG Wert
label Ordnet eine Verkehrsbezeichnung einer Revision zu Zeichenfolge
latestRevision Gibt an, dass die Datenverkehrsgewichtung zu einer aktuellen stabilen Revision gehört. bool
revisionName Name einer Revision Zeichenfolge
weight Einer Revision zugewiesene Verkehrsgewichtung INT

RegistryCredentials

Name BESCHREIBUNG Wert
Identität Eine verwaltete Identität, die zur Authentifizierung bei Azure Container Registry verwendet werden soll. Verwenden Sie für benutzerseitig zugewiesene Identitäten die vollständige benutzerseitig zugewiesene Identitätsressourcen-ID. Verwenden Sie für systemseitig zugewiesene Identitäten "system" Zeichenfolge
passwordSecretRef Der Name des Geheimnisses, das das Anmeldekennwort für die Registrierung enthält Zeichenfolge
server ContainerRegistrierungsserver Zeichenfolge
username Benutzername für Containerregistrierung Zeichenfolge

`Secret`

Name BESCHREIBUNG Wert
Identität Ressourcen-ID einer verwalteten Identität zur Authentifizierung bei Azure Key Vault oder System zur Verwendung einer systemseitig zugewiesenen Identität. Zeichenfolge
keyVaultUrl Azure Key Vault-URL, die auf das Geheimnis verweist, auf das die Container-App verweist. Zeichenfolge
name Geheimer Name. Zeichenfolge
value Geheimer Wert. Zeichenfolge

Einschränkungen:
Vertraulicher Wert. Übergeben Sie als sicheren Parameter.

Dienst

Name BESCHREIBUNG Wert
type Dev ContainerApp-Diensttyp Zeichenfolge (erforderlich)

Vorlage

Name BESCHREIBUNG Wert
containers Liste der Containerdefinitionen für die Container-App. Container[]
initContainers Liste der spezialisierten Container, die vor App-Containern ausgeführt werden. InitContainer[]
revisionSuffix Benutzerfreundliches Suffix, das an den Revisionsnamen angefügt wird Zeichenfolge
Skalierung Skalierungseigenschaften für die Container-App. Skalieren
serviceBinds Liste der an die App gebundenen Container-App-Dienste ServiceBind[]
terminationGracePeriodSeconds Optionale Dauer in Sekunden, die die Container-App-Instanz ordnungsgemäß beenden muss. Der Wert muss eine nicht negative ganze Zahl sein. Der Wert 0 gibt an, dass sofort über das Kill-Signal angehalten wird (keine Möglichkeit zum Herunterfahren). Wenn dieser Wert gleich null ist, wird stattdessen der standardmäßige Nachfristzeitraum verwendet. Legen Sie für diesen Wert eine längere Zeit als die erwartete Bereinigungszeit für Ihren Prozess fest. Der Standardwert beträgt 30 Sekunden. INT
volumes Liste der Volumedefinitionen für die Container-App. Volume[]

Container

Name BESCHREIBUNG Wert
args Container start-Befehlsargumente. string[]
command Containerstartbefehl. string[]
env Containerumgebungsvariablen. EnvironmentVar[]
image Containerimagetag. Zeichenfolge
name Benutzerdefinierter Containername. Zeichenfolge
probes Liste der Tests für den Container. ContainerAppProbe[]
ressourcen Anforderungen an Containerressourcen. ContainerResources
volumeMounts Containervolumemounts werden bereitgestellt. VolumeMount[]

EnvironmentVar

Name BESCHREIBUNG Wert
name Umgebungsvariablenname. Zeichenfolge
secretRef Name des Geheimen Container-App-Geheimnisses, aus dem der Wert der Umgebungsvariablen abgerufen werden soll. Zeichenfolge
value Nicht geheimer Umgebungsvariablenwert. Zeichenfolge

ContainerAppProbe

Name BESCHREIBUNG Wert
failureThreshold Minimale aufeinanderfolgende Fehler für den Test, der nach dem Erfolgreichen als fehlgeschlagen gilt. Der Standardwert ist 3. Der Mindestwert ist 1. Der maximale Wert ist 10. INT
httpGet HTTPGet gibt die auszuführende HTTP-Anforderung an. ContainerAppProbeHttpGet
initialDelaySeconds Die Anzahl der Sekunden, die nach dem Start des Containers vergehen, bevor Livetests initiiert werden. Der Mindestwert ist 1. Der Maximalwert ist 60. INT
periodSeconds Gibt an, wie häufig (in Sekunden) ein Test durchgeführt werden soll. Der Standardwert ist 10 Sekunden. Der Mindestwert ist 1. Der Maximalwert ist 240. INT
successThreshold Minimale aufeinanderfolgende Erfolge, damit der Test nach einem Fehler als erfolgreich betrachtet wird. Der Standardwert lautet 1. Muss 1 für Liveness und Start sein. Der Mindestwert ist 1. Der maximale Wert ist 10. INT
tcpSocket TCPSocket gibt eine Aktion an, die einen TCP-Port umfasst. TCP-Hooks werden noch nicht unterstützt. ContainerAppProbeTcpSocket
terminationGracePeriodSeconds Optionale Dauer in Sekunden, die der Pod bei einem Testfehler ordnungsgemäß beenden muss. Die Nachfrist ist die Dauer in Sekunden, nachdem die im Pod ausgeführten Prozesse ein Beendigungssignal gesendet haben, und der Zeitpunkt, zu dem die Prozesse mit einem Kill-Signal gewaltsam angehalten werden. Legen Sie für diesen Wert eine längere Zeit als die erwartete Bereinigungszeit für Ihren Prozess fest. Wenn dieser Wert null ist, wird die terminGracePeriodSeconds des Pods verwendet. Andernfalls überschreibt dieser Wert den von der Podspezifikation bereitgestellten Wert. Der Wert muss eine nicht negative ganze Zahl sein. Der Wert 0 gibt an, dass sofort über das Kill-Signal angehalten wird (keine Möglichkeit zum Herunterfahren). Dies ist ein Alphafeld und erfordert die Aktivierung des Featuregates "ProbeTerminationGracePeriod". Maximaler Wert ist 3600 Sekunden (1 Stunde) INT
timeoutSeconds Anzahl der Sekunden, nach denen der Test ein Zeitüberschreitungsintervall aufweist. Der Standardwert ist 1 Sekunde. Der Mindestwert ist 1. Der Maximalwert ist 240. INT
Typ Der Typ des Tests. "Leben"
"Bereitschaft"
"Start"

ContainerAppProbeHttpGet

Name BESCHREIBUNG Wert
host Hostname, mit dem eine Verbindung hergestellt werden soll, ist standardmäßig die Pod-IP-Adresse. Sie möchten wahrscheinlich stattdessen "Host" in httpHeaders festlegen. Zeichenfolge
httpHeaders Benutzerdefinierte Header, die in der Anforderung festgelegt werden sollen. HTTP lässt wiederholte Header zu. ContainerAppProbeHttpGetHttpHeadersItem[]
path Pfad zum Zugriff auf den HTTP-Server. Zeichenfolge
port Name oder Nummer des Ports, auf den für den Container zugegriffen werden soll. Die Zahl muss im Bereich 1 bis 65535 liegen. Name muss ein IANA_SVC_NAME sein. int (erforderlich)
scheme Schema, das zum Herstellen einer Verbindung mit dem Host verwendet werden soll. Der Standardwert ist HTTP. "HTTP"
"HTTPS"

ContainerAppProbeHttpGetHttpHeadersItem

Name BESCHREIBUNG Wert
name Der Name des Kopfzeilenfelds Zeichenfolge (erforderlich)
value Der Wert des Headerfelds Zeichenfolge (erforderlich)

ContainerAppProbeTcpSocket

Name BESCHREIBUNG Wert
host Optional: Hostname, mit dem eine Verbindung hergestellt werden soll, ist standardmäßig die Pod-IP-Adresse. Zeichenfolge
port Nummer oder Name des Ports, auf den auf den Container zugegriffen werden soll. Die Zahl muss im Bereich 1 bis 65535 liegen. Name muss ein IANA_SVC_NAME sein. int (erforderlich)

ContainerResources

Name BESCHREIBUNG Wert
cpu Erforderliche CPU in Kernen, z. B. 0.5 Um einen Dezimalwert anzugeben, verwenden Sie die Json()- Funktion. int oder json dezimal
Arbeitsspeicher Erforderlicher Arbeitsspeicher, z. B. "250MB" Zeichenfolge

VolumeMount

Name BESCHREIBUNG Wert
mountPath Pfad innerhalb des Containers, an dem das Volume eingebunden werden soll. Darf nicht ":" enthalten. Zeichenfolge
Untergeordnete Pfad innerhalb des Volumes, von dem das Volume des Containers eingebunden werden soll. Standardmäßig ist "" (Stammverzeichnis des Volumes). Zeichenfolge
volumeName Dies muss mit dem Namen eines Volumes übereinstimmen. Zeichenfolge

InitContainer

Name BESCHREIBUNG Wert
args Container start-Befehlsargumente. string[]
command Containerstartbefehl. string[]
env Containerumgebungsvariablen. EnvironmentVar[]
image Containerimagetag. Zeichenfolge
name Benutzerdefinierter Containername. Zeichenfolge
ressourcen Anforderungen an Containerressourcen. ContainerResources
volumeMounts Containervolumemounts werden bereitgestellt. VolumeMount[]

Skalieren

Name BESCHREIBUNG Wert
maxReplicas Optional. Maximale Anzahl von Containerreplikaten. Standardwert ist 10, wenn nicht festgelegt. INT
minReplicas Optional. Mindestanzahl von Containerreplikaten. INT
rules Skalierungsregeln. ScaleRule[]

ScaleRule

Name BESCHREIBUNG Wert
azureQueue Azure Queue-basierte Skalierung. QueueScaleRule
custom Benutzerdefinierte Skalierungsregel. CustomScaleRule
http AUF HTTP-Anforderungen basierende Skalierung. HttpScaleRule
name Name der Skalierungsregel Zeichenfolge
tcp Tcp-Anforderungen basierende Skalierung. TcpScaleRule

QueueScaleRule

Name BESCHREIBUNG Wert
auth Authentifizierungsgeheimnisse für die Warteschlangenskalierungsregel. ScaleRuleAuth[]
queueLength Warteschlangenlänge. INT
queueName Warteschlangenname. Zeichenfolge

ScaleRuleAuth

Name BESCHREIBUNG Wert
secretRef Name des Geheimnisses, aus dem die Authentifizierungsparameter abgerufen werden sollen. Zeichenfolge
triggerParameter Triggerparameter, der das Geheimnis verwendet Zeichenfolge

CustomScaleRule

Name BESCHREIBUNG Wert
auth Authentifizierungsgeheimnisse für die benutzerdefinierte Skalierungsregel. ScaleRuleAuth[]
metadata Metadateneigenschaften zum Beschreiben einer benutzerdefinierten Skalierungsregel. CustomScaleRuleMetadata
Typ Typ der benutzerdefinierten Skalierungsregel
z. B. azure-servicebus, redis etc.
Zeichenfolge

CustomScaleRuleMetadata

Name BESCHREIBUNG Wert
{angepasste Eigenschaft} Zeichenfolge

HttpScaleRule

Name BESCHREIBUNG Wert
auth Authentifizierungsgeheimnisse für die benutzerdefinierte Skalierungsregel. ScaleRuleAuth[]
metadata Metadateneigenschaften zur Beschreibung der HTTP-Skalierungsregel. HttpScaleRuleMetadata

HttpScaleRuleMetadata

Name BESCHREIBUNG Wert
{angepasste Eigenschaft} Zeichenfolge

TcpScaleRule

Name BESCHREIBUNG Wert
auth Authentifizierungsgeheimnisse für die TCP-Skalierungsregel. ScaleRuleAuth[]
metadata Metadateneigenschaften zum Beschreiben der TCP-Skalierungsregel. TcpScaleRuleMetadaten

TcpScaleRuleMetadaten

Name BESCHREIBUNG Wert
{angepasste Eigenschaft} Zeichenfolge

ServiceBind

Name BESCHREIBUNG Wert
clientType Typ des Clients, der zum Herstellen einer Verbindung mit dem Dienst verwendet werden soll Zeichenfolge
customizedKeys Angepasste Schlüssel zum Anpassen eingefügter Werte an die App ServiceBindCustomizedKeys
name Name der Dienstbindung Zeichenfolge
serviceId Ressourcen-ID des Zieldiensts Zeichenfolge

ServiceBindCustomizedKeys

Name BESCHREIBUNG Wert
{angepasste Eigenschaft} Zeichenfolge

Volume

Name BESCHREIBUNG Wert
mountOptions Einbindungsoptionen, die beim Einbinden der Azure-Dateifreigabe oder NFS-Azure-Dateifreigabe verwendet werden. Muss eine durch Trennzeichen getrennte Zeichenfolge sein. Zeichenfolge
name Volumename. Zeichenfolge
secrets Liste der Geheimnisse, die dem Volume hinzugefügt werden sollen. Wenn keine Geheimnisse bereitgestellt werden, werden alle Geheimnisse in der Sammlung dem Volume hinzugefügt. SecretVolumeItem[]
storageName Name der Speicherressource. Es ist nicht erforderlich, emptyDir und Secret anzugeben. Zeichenfolge
Speichertyp Speichertyp für das Volume. Wenn nicht angegeben, verwenden Sie EmptyDir. "AzureFile"
'EmptyDir'
'NfsAzureFile'
"Geheimnis"

SecretVolumeItem

Name BESCHREIBUNG Wert
path Pfad zum Projektgeheimnis. Wenn kein Pfad angegeben wird, wird der Pfad standardmäßig auf den Namen des in secretRef aufgeführten Geheimnisses festgelegt. Zeichenfolge
secretRef Name des geheimen Container-App-Geheimnisses, aus dem der Geheimniswert abgerufen werden soll. Zeichenfolge

Schnellstartvorlagen

In den folgenden Schnellstartvorlagen wird dieser Ressourcentyp bereitgestellt.

Vorlage BESCHREIBUNG
Erstellt eine Container-App und eine Umgebung mit Registrierung.

Bereitstellen in Azure
Erstellen Sie eine Container-App-Umgebung mit einer einfachen Container-App aus einer Azure Container Registry. Außerdem wird ein Log Analytics-Arbeitsbereich zum Speichern von Protokollen bereitgestellt.
Erstellt eine Zwei-Container-App mit einer Container-App-Umgebung

Bereitstellen in Azure
Erstellen Sie eine Umgebung mit zwei Container-Apps mit einer einfachen Container-App. Außerdem wird ein Log Analytics-Arbeitsbereich zum Speichern von Protokollen bereitgestellt.
Erstellt eine Container-App in einer Container-App-Umgebung

Bereitstellen in Azure
Erstellen Sie eine Container-App-Umgebung mit einer einfachen Container-App. Außerdem wird ein Log Analytics-Arbeitsbereich zum Speichern von Protokollen bereitgestellt.
Erstellt eine Container-App mit einer definierten HTTP-Skalierungsregel

Bereitstellen in Azure
Erstellen Sie eine Container-App-Umgebung mit einer einfachen Container-App, die basierend auf HTTP-Datenverkehr skaliert wird.
Erstellt eine externe Container-App-Umgebung mit einem VNET

Bereitstellen in Azure
Erstellt eine externe Container-App-Umgebung mit einem VNET.
Erstellt eine interne Container-App-Umgebung mit einem VNET

Bereitstellen in Azure
Erstellt eine interne Container-App-Umgebung mit einem VNET.

Terraform-Ressourcendefinition (AzAPI-Anbieter)

Der Ressourcentyp containerApps kann mit Vorgängen bereitgestellt werden, die auf Folgendes abzielen:

  • Ressourcengruppen

Eine Liste der geänderten Eigenschaften in jeder API-Version finden Sie im Änderungsprotokoll.

Ressourcenformat

Um eine Microsoft.App/containerApps-Ressource zu erstellen, fügen Sie der Vorlage den folgenden Terraform hinzu.

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

Eigenschaftswerte

containerApps

Name BESCHREIBUNG Wert
type Der Ressourcentyp "Microsoft.App/containerApps@2023-11-02-preview"
name Der Ressourcenname Zeichenfolge (erforderlich)

Zeichenlimit: 2-32

Gültige Zeichen:
Kleinbuchstaben, Zahlen und Bindestriche..

Muss mit einem Buchstaben beginnen und mit einem alphanumerischen Zeichen enden.
location Der geografische Standort, an dem sich die Ressource befindet Zeichenfolge (erforderlich)
parent_id Verwenden Sie zum Bereitstellen in einer Ressourcengruppe die ID dieser Ressourcengruppe. Zeichenfolge (erforderlich)
tags Ressourcentags. Wörterbuch der Tagnamen und -werte.
extendedLocation Der komplexe Typ des erweiterten Standorts. ExtendedLocation
Identität Verwaltete Identitäten für die Container-App, um mit anderen Azure-Diensten zu interagieren, ohne Geheimnisse oder Anmeldeinformationen im Code beizubehalten. ManagedServiceIdentity
managedBy Die vollqualifizierte Ressourcen-ID der Ressource, die diese Ressource verwaltet. Gibt an, ob diese Ressource von einer anderen Azure-Ressource verwaltet wird. Wenn dies vorhanden ist, löscht die Bereitstellung im vollständigen Modus die Ressource nicht, wenn sie aus der Vorlage entfernt wird, da sie von einer anderen Ressource verwaltet wird. Zeichenfolge
properties Ressourcenspezifische Eigenschaften für ContainerApp ContainerAppProperties

ExtendedLocation

Name BESCHREIBUNG Wert
name Der Name des erweiterten Speicherorts. Zeichenfolge
type Der Typ des erweiterten Speicherorts. "CustomLocation"

ManagedServiceIdentity

Name BESCHREIBUNG Wert
type Typ der verwalteten Dienstidentität (wobei sowohl systemAssigned- als auch UserAssigned-Typen zulässig sind). "SystemAssigned"
"SystemAssigned,UserAssigned"
"UserAssigned" (erforderlich)
identity_ids Die Gruppe der benutzerseitig zugewiesenen Identitäten, die der Ressource zugeordnet sind. Bei den UserAssignedIdentities-Wörterbuchschlüsseln handelt es sich um ARM-Ressourcen-IDs in der Form : '/subscriptions/{subscriptionId}/resourceGroupGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Die Wörterbuchwerte können leere Objekte ({}) in Anforderungen sein. Array von Benutzeridentitäts-IDs.

UserAssignedIdentities

Name BESCHREIBUNG Wert
{angepasste Eigenschaft} UserAssignedIdentity

UserAssignedIdentity

Dieses Objekt enthält keine Eigenschaften, die während der Bereitstellung festgelegt werden sollen. Alle Eigenschaften sind ReadOnly.

ContainerAppProperties

Name BESCHREIBUNG Wert
Konfiguration Konfigurationseigenschaften der Container-App ohne Version. Configuration
environmentId Ressourcen-ID der Umgebung. Zeichenfolge
managedEnvironmentId Veraltet. Ressourcen-ID der Umgebung der Container-App. Zeichenfolge
Vorlage Anwendungsdefinition der Container-App mit Version. Vorlage
workloadProfileName Workloadprofilname, der für die Ausführung der Container-App angeheftt werden soll. Zeichenfolge

Konfiguration

Name BESCHREIBUNG Wert
activeRevisionsMode ActiveRevisionsMode steuert, wie aktive Revisionen für die Container-App behandelt werden:
{list} {item} Mehrfach: Mehrere Revisionen können aktiv sein. {/item} {item} Single: Nur eine Revision kann gleichzeitig aktiv sein. Revisionsgewichte können in diesem Modus nicht verwendet werden. Wenn kein Wert angegeben ist, ist dies der Standardwert. {/item} {/list}
"Mehrfach"
"Single"
dapr Dapr-Konfiguration für die Container-App. Dapr
Eindringen Eingangskonfigurationen. Eingehend
maxInactiveRevisions Optional. Die maximale Anzahl inaktiver Revisionen, die eine Container-App aufweisen kann. INT
registries Sammlung von Anmeldeinformationen für die private Containerregistrierung für Container, die von der Container-App verwendet werden RegistryCredentials[]
secrets Sammlung von Geheimnissen, die von einer Container-App verwendet werden Geheimnis[]
Dienst Container-App als Dev-Container-App Service Service

Dapr

Name BESCHREIBUNG Wert
appId Dapr-Anwendungsbezeichner Zeichenfolge
appPort Teilt Dapr mit, an welchem Port Ihre Anwendung lauscht INT
appProtocol Teilt Dapr mit, welches Protokoll Ihre Anwendung verwendet. Gültige Optionen sind http und grpc. Der Standardwert ist http. "grpc"
"http"
enableApiLogging Aktiviert die API-Protokollierung für das Dapr-Sidecar bool
enabled Boolescher Wert, der angibt, ob das Dapr-Seitenfahrzeug aktiviert ist bool
httpMaxRequestSize Erhöhen der maximalen Größe des Http- und grpc-Serverparameters für den Anforderungstext in MB, um das Hochladen großer Dateien zu verarbeiten. Der Standardwert ist 4 MB. INT
httpReadBufferSize Dapr maximale Größe des HTTP-Headerlesepuffers in KB, der beim Senden von Multi-KB-Headern behandelt werden soll. Der Standardwert ist 65 KB. INT
logLevel Legt die Protokollebene für das Dapr-Sidecar fest. Zulässige Werte sind debug, info, warn, error. Der Standardwert ist info. "debuggen"
"Fehler"
"Info"
"warnen"

Eingehende Daten

Name BESCHREIBUNG Wert
additionalPortMappings Einstellungen zum Verfügbarmachen zusätzlicher Ports in der Container-App IngressPortMapping[]
allowInsecure Bool, der angibt, ob HTTP-Verbindungen mit zulässig sind. Wenn auf "False" festgelegt ist, werden HTTP-Verbindungen automatisch an HTTPS-Verbindungen umgeleitet. bool
clientCertificateMode Clientzertifikatmodus für die mTLS-Authentifizierung. Ignore gibt an, dass der Server das Clientzertifikat bei der Weiterleitung löscht. Accept gibt an, dass der Server das Clientzertifikat weiterleitet, aber kein Clientzertifikat erfordert. Erforderlich gibt an, dass der Server ein Clientzertifikat erfordert. "Akzeptieren"
"ignorieren"
"erforderlich"
corsPolicy CORS-Richtlinie für Container-App CorsPolicy
customDomains benutzerdefinierte Domänenbindungen für Container Apps-Hostnamen. CustomDomain[]
exposedPort Verfügbar gemachter Port in Containern für TCP-Datenverkehr aus eingehendem Datenverkehr INT
external Bool, der angibt, ob die App einen externen HTTP-Endpunkt verfügbar macht bool
ipSecurityRestrictions Regeln zum Einschränken eingehender IP-Adressen. IpSecurityRestrictionRule[]
stickySessions Kurzsitzungen für den einzelnen Revisionsmodus IngressStickySessions
targetPort Zielport in Containern für Eingehenden Datenverkehr INT
targetPortHttpScheme Ob eine HTTP-App auf HTTP oder HTTPS lauscht "http"
"https"
traffic Datenverkehrsgewichtung für App-Revisionen TrafficWeight[]
Transport Protokoll für eingehenden Transport "auto"
"http"
"http2"
"tcp"

IngressPortMapping

Name BESCHREIBUNG Wert
exposedPort Gibt den verfügbar gemachten Port für den Zielport an. Wenn nicht angegeben, wird standardmäßig der Zielport verwendet. INT
external Gibt an, ob auf den App-Port außerhalb der Umgebung zugegriffen werden kann. bool (erforderlich)
targetPort Gibt an, an ob der Container des Portbenutzers lauscht. int (erforderlich)

CorsPolicy

Name BESCHREIBUNG Wert
allowCredentials Gibt an, ob die Ressource Anmeldeinformationen zulässt. bool
allowedHeaders Gibt den Inhalt für den Header access-control-allow-headers an. string[]
allowedMethods Gibt den Inhalt für den Access-Control-allow-methods-Header an. string[]
allowedOrigins Gibt den Inhalt für den Header access-control-allow-origins an. string[] (erforderlich)
exposeHeaders Gibt den Inhalt für den access-control-expose-headers-Header an. string[]
maxAge Gibt den Inhalt für den access-control-max-age-Header an. INT

CustomDomain

Name BESCHREIBUNG Wert
Bindingtype Custom Domain Bindungstyp. "Deaktiviert"
"SniEnabled"
certificateId Ressourcen-ID des Zertifikats, das an diesen Hostnamen gebunden werden soll. Muss in der verwalteten Umgebung vorhanden sein. Zeichenfolge
name Hostname. Zeichenfolge (erforderlich)

IpSecurityRestrictionRule

Name BESCHREIBUNG Wert
action Regeln zulassen oder verweigern, um für eingehende IP-Adressen zu bestimmen. Hinweis: Regeln können nur aus ALL Allow oder ALL Deny bestehen. "Zulassen"
"Verweigern" (erforderlich)
description Beschreiben sie die IP-Einschränkungsregel, die an die container-app gesendet wird. Dies ist ein optionales Feld. Zeichenfolge
ipAddressRange CIDR-Notation zur Übereinstimmung mit eingehender IP-Adresse Zeichenfolge (erforderlich)
name Name für die IP-Einschränkungsregel. Zeichenfolge (erforderlich)

IngressStickySessions

Name BESCHREIBUNG Wert
affinity Affinität zwischen Sticky-Sitzungen "keine"
"sticky"

TrafficWeight

Name BESCHREIBUNG Wert
label Ordnet eine Datenverkehrsbezeichnung einer Revision zu Zeichenfolge
latestRevision Gibt an, dass die Datenverkehrsgewichtung zu einer aktuellen stabilen Revision gehört. bool
revisionName Name einer Revision Zeichenfolge
weight Einer Revision zugewiesene Datenverkehrsgewichtung INT

RegistryCredentials

Name BESCHREIBUNG Wert
Identität Eine verwaltete Identität, die für die Authentifizierung bei Azure Container Registry verwendet werden soll. Verwenden Sie für benutzerseitig zugewiesene Identitäten die vollständige benutzerseitig zugewiesene Identitätsressourcen-ID. Verwenden Sie für systemseitig zugewiesene Identitäten "system". Zeichenfolge
passwordSecretRef Der Name des Geheimnisses, das das Anmeldekennwort für die Registrierung enthält. Zeichenfolge
server ContainerRegistrierungsserver Zeichenfolge
username Benutzername der Containerregistrierung Zeichenfolge

`Secret`

Name BESCHREIBUNG Wert
Identität Ressourcen-ID einer verwalteten Identität zur Authentifizierung bei Azure Key Vault oder System zur Verwendung einer systemseitig zugewiesenen Identität. Zeichenfolge
keyVaultUrl Azure Key Vault URL, die auf das Geheimnis verweist, auf das die Container-App verweist. Zeichenfolge
name Name des Geheimnisses. Zeichenfolge
value Geheimniswert. Zeichenfolge

Einschränkungen:
Vertraulicher Wert. Übergeben Sie als sicheren Parameter.

Dienst

Name BESCHREIBUNG Wert
type Dev ContainerApp-Diensttyp Zeichenfolge (erforderlich)

Vorlage

Name BESCHREIBUNG Wert
containers Liste der Containerdefinitionen für die Container-App. Container[]
initContainers Liste der spezialisierten Container, die vor App-Containern ausgeführt werden. InitContainer[]
revisionSuffix Benutzerfreundliches Suffix, das an den Revisionsnamen angefügt wird Zeichenfolge
Skalierung Skalierungseigenschaften für die Container-App. Skalieren
serviceBinds Liste der an die App gebundenen Container-App-Dienste ServiceBind[]
terminationGracePeriodSeconds Optionale Dauer in Sekunden, die die Container-App-Instanz ordnungsgemäß beenden muss. Der Wert muss eine nicht negative ganze Zahl sein. Der Wert 0 gibt an, dass sofort über das Kill-Signal angehalten wird (keine Gelegenheit zum Herunterfahren). Wenn dieser Wert gleich null ist, wird stattdessen der standardmäßige Nachfristzeitraum verwendet. Legen Sie für diesen Wert eine längere Zeit als die erwartete Bereinigungszeit für Ihren Prozess fest. Der Standardwert beträgt 30 Sekunden. INT
volumes Liste der Volumedefinitionen für die Container-App. Volume[]

Container

Name BESCHREIBUNG Wert
args Containerstartbefehlsargumente. string[]
command Containerstartbefehl. string[]
env Containerumgebungsvariablen. EnvironmentVar[]
image Containerimagetag. Zeichenfolge
name Benutzerdefinierter Containername. Zeichenfolge
probes Liste der Tests für den Container. ContainerAppProbe[]
ressourcen Anforderungen an Containerressourcen. ContainerResources
volumeMounts Bereitstellungen von Containervolumes. VolumeMount[]

EnvironmentVar

Name BESCHREIBUNG Wert
name Umgebungsvariablenname. Zeichenfolge
secretRef Name des geheimen Container-App-Geheimnisses, aus dem der Wert der Umgebungsvariablen abgerufen werden soll. Zeichenfolge
value Nicht geheimer Umgebungsvariablenwert. Zeichenfolge

ContainerAppProbe

Name BESCHREIBUNG Wert
failureThreshold Minimale aufeinanderfolgende Fehler, damit der Test nach dem Erfolgreichen als fehlgeschlagen gilt. Der Standardwert ist 3. Der Mindestwert ist 1. Der maximale Wert ist 10. INT
httpGet HTTPGet gibt die auszuführende HTTP-Anforderung an. ContainerAppProbeHttpGet
initialDelaySeconds Die Anzahl der Sekunden, die nach dem Start des Containers vergehen, bevor Livetests initiiert werden. Der Mindestwert ist 1. Der Maximalwert ist 60. INT
periodSeconds Gibt an, wie häufig (in Sekunden) ein Test durchgeführt werden soll. Der Standardwert ist 10 Sekunden. Der Mindestwert ist 1. Der Maximalwert ist 240. INT
successThreshold Minimale aufeinanderfolgende Erfolge, damit der Test nach einem Fehler als erfolgreich betrachtet wird. Der Standardwert lautet 1. Muss 1 für Liveness und Start sein. Der Mindestwert ist 1. Der maximale Wert ist 10. INT
tcpSocket TCPSocket gibt eine Aktion an, die einen TCP-Port umfasst. TCP-Hooks werden noch nicht unterstützt. ContainerAppProbeTcpSocket
terminationGracePeriodSeconds Optionale Dauer in Sekunden, die der Pod bei einem Testfehler ordnungsgemäß beenden muss. Die Nachfrist ist die Dauer in Sekunden, nachdem die im Pod ausgeführten Prozesse ein Beendigungssignal gesendet haben, und der Zeitpunkt, zu dem die Prozesse mit einem Kill-Signal gewaltsam angehalten werden. Legen Sie für diesen Wert eine längere Zeit als die erwartete Bereinigungszeit für Ihren Prozess fest. Wenn dieser Wert null ist, wird die terminGracePeriodSeconds des Pods verwendet. Andernfalls überschreibt dieser Wert den von der Podspezifikation bereitgestellten Wert. Der Wert muss eine nicht negative ganze Zahl sein. Der Wert 0 gibt an, dass sofort über das Kill-Signal angehalten wird (keine Möglichkeit zum Herunterfahren). Dies ist ein Alphafeld und erfordert die Aktivierung des Featuregates "ProbeTerminationGracePeriod". Maximaler Wert ist 3600 Sekunden (1 Stunde) INT
timeoutSeconds Anzahl der Sekunden, nach denen der Test ein Zeitüberschreitungsintervall aufweist. Der Standardwert ist 1 Sekunde. Der Mindestwert ist 1. Der Maximalwert ist 240. INT
Typ Der Typ des Tests. "Leben"
"Bereitschaft"
"Start"

ContainerAppProbeHttpGet

Name BESCHREIBUNG Wert
host Hostname, mit dem eine Verbindung hergestellt werden soll, ist standardmäßig die Pod-IP-Adresse. Sie möchten wahrscheinlich stattdessen "Host" in httpHeaders festlegen. Zeichenfolge
httpHeaders Benutzerdefinierte Header, die in der Anforderung festgelegt werden sollen. HTTP lässt wiederholte Header zu. ContainerAppProbeHttpGetHttpHeadersItem[]
path Pfad zum Zugriff auf den HTTP-Server. Zeichenfolge
port Name oder Nummer des Ports, auf den für den Container zugegriffen werden soll. Die Zahl muss im Bereich 1 bis 65535 liegen. Name muss ein IANA_SVC_NAME sein. int (erforderlich)
scheme Schema, das zum Herstellen einer Verbindung mit dem Host verwendet werden soll. Der Standardwert ist HTTP. „HTTP“
"HTTPS"

ContainerAppProbeHttpGetHttpHeadersItem

Name BESCHREIBUNG Wert
name Der Name des Kopfzeilenfelds Zeichenfolge (erforderlich)
value Der Wert des Headerfelds Zeichenfolge (erforderlich)

ContainerAppProbeTcpSocket

Name BESCHREIBUNG Wert
host Optional: Hostname, mit dem eine Verbindung hergestellt werden soll, ist standardmäßig die Pod-IP-Adresse. Zeichenfolge
port Nummer oder Name des Ports, auf den auf den Container zugegriffen werden soll. Die Zahl muss im Bereich 1 bis 65535 liegen. Name muss ein IANA_SVC_NAME sein. int (erforderlich)

ContainerResources

Name BESCHREIBUNG Wert
cpu Erforderliche CPU in Kernen, z. B. 0.5 Geben Sie einen Dezimalwert als Zeichenfolge an. int oder json dezimal
Arbeitsspeicher Erforderlicher Arbeitsspeicher, z. B. "250MB" Zeichenfolge

VolumeMount

Name BESCHREIBUNG Wert
mountPath Pfad innerhalb des Containers, an dem das Volume eingebunden werden soll. Darf nicht ":" enthalten. Zeichenfolge
Untergeordnete Pfad innerhalb des Volumes, von dem das Volume des Containers eingebunden werden soll. Standardmäßig ist "" (Stammverzeichnis des Volumes). Zeichenfolge
volumeName Dies muss mit dem Namen eines Volumes übereinstimmen. Zeichenfolge

InitContainer

Name BESCHREIBUNG Wert
args Container start-Befehlsargumente. string[]
command Containerstartbefehl. string[]
env Containerumgebungsvariablen. EnvironmentVar[]
image Containerimagetag. Zeichenfolge
name Benutzerdefinierter Containername. Zeichenfolge
ressourcen Anforderungen an Containerressourcen. ContainerResources
volumeMounts Containervolumemounts werden bereitgestellt. VolumeMount[]

Skalieren

Name BESCHREIBUNG Wert
maxReplicas Optional. Maximale Anzahl von Containerreplikaten. Standardwert ist 10, wenn nicht festgelegt. INT
minReplicas Optional. Mindestanzahl von Containerreplikaten. INT
rules Skalierungsregeln. ScaleRule[]

ScaleRule

Name BESCHREIBUNG Wert
azureQueue Azure Queue-basierte Skalierung. QueueScaleRule
custom Benutzerdefinierte Skalierungsregel. CustomScaleRule
http AUF HTTP-Anforderungen basierende Skalierung. HttpScaleRule
name Name der Skalierungsregel Zeichenfolge
tcp Tcp-Anforderungen basierende Skalierung. TcpScaleRule

QueueScaleRule

Name BESCHREIBUNG Wert
auth Authentifizierungsgeheimnisse für die Warteschlangenskalierungsregel. ScaleRuleAuth[]
queueLength Warteschlangenlänge. INT
queueName Warteschlangenname. Zeichenfolge

ScaleRuleAuth

Name BESCHREIBUNG Wert
secretRef Name des Geheimnisses, aus dem die Authentifizierungsparameter abgerufen werden sollen. Zeichenfolge
triggerParameter Triggerparameter, der das Geheimnis verwendet Zeichenfolge

CustomScaleRule

Name BESCHREIBUNG Wert
auth Authentifizierungsgeheimnisse für die benutzerdefinierte Skalierungsregel. ScaleRuleAuth[]
metadata Metadateneigenschaften zum Beschreiben einer benutzerdefinierten Skalierungsregel. CustomScaleRuleMetadata
Typ Typ der benutzerdefinierten Skalierungsregel
z. B. azure-servicebus, redis etc.
Zeichenfolge

CustomScaleRuleMetadata

Name BESCHREIBUNG Wert
{angepasste Eigenschaft} Zeichenfolge

HttpScaleRule

Name BESCHREIBUNG Wert
auth Authentifizierungsgeheimnisse für die benutzerdefinierte Skalierungsregel. ScaleRuleAuth[]
metadata Metadateneigenschaften zur Beschreibung der HTTP-Skalierungsregel. HttpScaleRuleMetadata

HttpScaleRuleMetadata

Name BESCHREIBUNG Wert
{angepasste Eigenschaft} Zeichenfolge

TcpScaleRule

Name BESCHREIBUNG Wert
auth Authentifizierungsgeheimnisse für die TCP-Skalierungsregel. ScaleRuleAuth[]
metadata Metadateneigenschaften zum Beschreiben der TCP-Skalierungsregel. TcpScaleRuleMetadaten

TcpScaleRuleMetadaten

Name BESCHREIBUNG Wert
{angepasste Eigenschaft} Zeichenfolge

ServiceBind

Name BESCHREIBUNG Wert
clientType Typ des Clients, der zum Herstellen einer Verbindung mit dem Dienst verwendet werden soll Zeichenfolge
customizedKeys Angepasste Schlüssel zum Anpassen eingefügter Werte an die App ServiceBindCustomizedKeys
name Name der Dienstbindung Zeichenfolge
serviceId Ressourcen-ID des Zieldiensts Zeichenfolge

ServiceBindCustomizedKeys

Name BESCHREIBUNG Wert
{angepasste Eigenschaft} Zeichenfolge

Lautstärke

Name BESCHREIBUNG Wert
mountOptions Einbindungsoptionen, die beim Einbinden der Azure-Dateifreigabe oder der NFS-Azure-Dateifreigabe verwendet werden. Muss eine durch Trennzeichen getrennte Zeichenfolge sein. Zeichenfolge
name Volumename. Zeichenfolge
secrets Liste der Geheimnisse, die dem Volume hinzugefügt werden sollen. Wenn keine Geheimnisse bereitgestellt werden, werden alle Geheimnisse in der Sammlung dem Volume hinzugefügt. SecretVolumeItem[]
storageName Name der Speicherressource. Keine Notwendigkeit, EmptyDir und Secret bereitzustellen. Zeichenfolge
Speichertyp Speichertyp für das Volume. Wenn nicht angegeben, verwenden Sie EmptyDir. "AzureFile"
"EmptyDir"
"NfsAzureFile"
"Geheimnis"

SecretVolumeItem

Name BESCHREIBUNG Wert
path Pfad zum Projektgeheimnis. Wenn kein Pfad angegeben wird, wird der Pfad standardmäßig auf den Namen des in secretRef aufgeführten Geheimnisses festgelegt. Zeichenfolge
secretRef Name des Geheimen Container-App-Geheimnisses, aus dem der Geheimniswert abgerufen werden soll. Zeichenfolge