Partager via


Microsoft.App containerApps

Définition de ressource Bicep

Le type de ressource containerApps peut être déployé avec des opérations qui ciblent :

Pour obtenir la liste des propriétés modifiées dans chaque version d’API, consultez journal des modifications.

Format des ressources

Pour créer une ressource Microsoft.App/containerApps, ajoutez le Bicep suivant à votre modèle.

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'
  }
}

Valeurs de propriétés

containerApps

Nom Description Valeur
name Nom de la ressource string (obligatoire)

Limite de caractères : 2-32

Caractères valides :
Lettres minuscules, chiffres et traits d’union.

Doit commencer par une lettre et se terminer par un caractère alphanumérique.
location Emplacement géographique où réside la ressource string (obligatoire)
tags Balises de ressource. Dictionnaire de noms et de valeurs d’étiquettes. Voir Balises dans les modèles
extendedLocation Type complexe de l’emplacement étendu. ExtendedLocation
identité identités managées permettant à l’application conteneur d’interagir avec d’autres services Azure sans conserver de secrets ou d’informations d’identification dans le code. ManagedServiceIdentity
managedBy ID de ressource complet de la ressource qui gère cette ressource. Indique si cette ressource est gérée par une autre ressource Azure. Si cela est présent, le déploiement en mode complet ne supprime pas la ressource si elle est supprimée du modèle, car elle est gérée par une autre ressource. string
properties Propriétés spécifiques à la ressource ContainerApp ContainerAppProperties

ExtendedLocation

Nom Description Valeur
name Nom de l’emplacement étendu. string
type Type de l’emplacement étendu. 'CustomLocation'

ManagedServiceIdentity

Nom Description Valeur
type Type d’identité de service managé (où les types SystemAssigned et UserAssigned sont autorisés). 'None'
'SystemAssigned'
'SystemAssigned,UserAssigned'
'UserAssigned' (obligatoire)
userAssignedIdentities Ensemble d’identités affectées par l’utilisateur associées à la ressource. Les clés de dictionnaire userAssignedIdentities sont des ID de ressource ARM au format : '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Les valeurs du dictionnaire peuvent être des objets vides ({}) dans les requêtes. UserAssignedIdentities

UserAssignedIdentities

Nom Description Valeur
{propriété personnalisée} userAssignedIdentity

userAssignedIdentity

Cet objet ne contient aucune propriété à définir pendant le déploiement. Toutes les propriétés sont ReadOnly.

ContainerAppProperties

Nom Description Valeur
configuration Propriétés de configuration de l’application conteneur sans version. Configuration
environmentId ID de ressource de l’environnement. string
managedEnvironmentId Action déconseillée. ID de ressource de l’environnement de l’application conteneur. string
template Définition d’application avec version d’application conteneur. Modèle
workloadProfileName Nom du profil de charge de travail à épingler pour l’exécution de l’application conteneur. string

Configuration

Name Description Valeur
activeRevisionsMode ActiveRevisionsMode contrôle la façon dont les révisions actives sont gérées pour l’application conteneur :
{list} {item} Multiple : plusieurs révisions peuvent être actives. {/item} {item} Unique : une seule révision peut être active à la fois. Les pondérations de révision ne peuvent pas être utilisées dans ce mode. Si aucune valeur n’est fournie, il s’agit de la valeur par défaut. {/item} {/list}
'Multiple'
'Single'
dapr Configuration de Dapr pour l’application conteneur. Dapr
Pénétration Configurations d’entrée. Entrée
maxInactiveRevisions facultatif. Nombre maximal de révisions inactives qu’une application conteneur peut avoir. int
registries Collection d’informations d’identification de registre de conteneurs privés pour les conteneurs utilisés par l’application conteneur RegistryCredentials[]
secrets Collection de secrets utilisés par une application conteneur Secret[]
service Container App pour être un conteneur de développement App Service Service

Dapr

Nom Description Valeur
appId Identificateur d’application Dapr string
appPort Indique à Dapr le port sur lequel votre application écoute int
appProtocol Indique à Dapr quel protocole votre application utilise. Les options valides sont http et grpc. La valeur par défaut est http 'grpc'
'http'
enableApiLogging Active la journalisation des API pour le side-car Dapr bool
enabled Boolean indiquant si le side car Dapr est activé bool
httpMaxRequestSize Augmentation de la taille maximale du paramètre de serveurs http et grpc du corps de la requête en Mo pour gérer le chargement de fichiers volumineux. La valeur par défaut est de 4 Mo. int
httpReadBufferSize Taille maximale dapr de la mémoire tampon de lecture d’en-tête http en Ko à gérer lors de l’envoi d’en-têtes de plusieurs ko. La valeur par défaut est de 65 Ko. int
logLevel Définit le niveau de journal pour le side-car Dapr. Les valeurs autorisées sont débogage, informations, avertissement, erreur. La valeur par défaut est info. 'debug'
'error'
'info'
'avertir'

Entrée

Nom Description Valeur
additionalPortMappings Paramètres pour exposer des ports supplémentaires sur l’application conteneur IngressPortMapping[]
allowInsecure Bool indiquant si les connexions HTTP à sont autorisées. Si la valeur est false HTTP, les connexions sont automatiquement redirigées vers les connexions HTTPS bool
clientCertificateMode Mode certificat client pour l’authentification mTLS. Ignorer indique que le serveur supprime le certificat client lors du transfert. Accept indique que le serveur transfère le certificat client, mais ne nécessite pas de certificat client. Exiger indique que le serveur a besoin d’un certificat client. 'accepter'
'ignore'
'exiger'
corsPolicy Stratégie CORS pour l’application conteneur CorsPolicy
customDomains liaisons de domaine personnalisées pour les noms d’hôte de Container Apps. CustomDomain[]
exposedPort Port exposé dans les conteneurs pour le trafic TCP d’entrée int
external Bool indiquant si l’application expose un point de terminaison http externe bool
ipSecurityRestrictions Règles pour restreindre l’adresse IP entrante. IpSecurityRestrictionRule[]
stickySessions Sessions collantes pour le mode révision unique IngressStickySessions
targetPort Port cible dans les conteneurs pour le trafic d’entrée int
targetPortHttpScheme Si une application http écoute sur http ou https 'http'
'https'
traffic Pondérations du trafic pour les révisions de l’application TrafficWeight[]
transport Protocole de transport d’entrée 'auto'
'http'
'http2'
'tcp'

IngressPortMapping

Nom Description Valeur
exposedPort Spécifie le port exposé pour le port cible. S’il n’est pas spécifié, il est défini par défaut sur le port cible int
external Spécifie si le port d’application est accessible en dehors de l’environnement bool (obligatoire)
targetPort Spécifie que le conteneur de l’utilisateur de port écoute sur int (obligatoire)

CorsPolicy

Nom Description Valeur
allowCredentials Spécifie si la ressource autorise les informations d’identification bool
allowedHeaders Spécifie le contenu de l’en-tête access-control-allow-headers string[]
allowedMethods Spécifie le contenu de l’en-tête access-control-allow-methods string[]
allowedOrigins Spécifie le contenu de l’en-tête access-control-allow-origins string[] (obligatoire)
exposeHeaders Spécifie le contenu de l’en-tête access-control-expose-headers string[]
maxAge Spécifie le contenu de l’en-tête access-control-max-age int

CustomDomain

Nom Description Valeur
bindingType Custom Domain type de liaison. 'Désactivé'
'SniEnabled'
certificateId ID de ressource du certificat à lier à ce nom d’hôte. Doit exister dans l’environnement managé. string
name Nom d'hôte. chaîne (obligatoire)

IpSecurityRestrictionRule

Nom Description Valeur
action Autoriser ou refuser les règles à déterminer pour l’adresse IP entrante. Remarque : Les règles peuvent uniquement se composer de ALL Allow ou ALL Deny 'Autoriser'
'Deny' (obligatoire)
description Décrire la règle de restriction IP envoyée à l’application conteneur. Ce champ est facultatif. string
ipAddressRange Notation CIDR pour correspondre à l’adresse IP entrante chaîne (obligatoire)
name Nom de la règle de restriction IP. chaîne (obligatoire)

IngressStickySessions

Nom Description Valeur
affinité Affinité de session collante 'none'
'collant'

TrafficWeight

Nom Description Valeur
label Associe une étiquette de trafic à une révision string
latestRevision Indique que le poids du trafic appartient à une dernière révision stable bool
revisionName Nom d’une révision string
poids Poids du trafic affecté à une révision int

RegistryCredentials

Nom Description Valeur
identité Une identité managée à utiliser pour s’authentifier avec Azure Container Registry. Pour les identités affectées par l’utilisateur, utilisez l’ID de ressource complet de l’identité affectée par l’utilisateur. Pour les identités affectées par le système, utilisez « system » string
passwordSecretRef Nom du secret qui contient le mot de passe de connexion au registre string
server Container Registry Server string
username Nom d’utilisateur du registre de conteneurs string

Secret

Nom Description Valeur
identité ID de ressource d’une identité managée pour l’authentification auprès d’Azure Key Vault ou système pour utiliser une identité affectée par le système. string
keyVaultUrl Azure Key Vault URL pointant vers le secret référencé par l’application conteneur. string
name Nom du secret. string
value Valeur de secret. string

Contraintes :
Valeur sensible. Passez en tant que paramètre sécurisé.

Service

Nom Description Valeur
type Type de service ContainerApp dev string (obligatoire)

Modèle

Nom Description Valeur
containers Liste des définitions de conteneur pour l’application conteneur. Conteneur[]
initContainers Liste des conteneurs spécialisés qui s’exécutent avant les conteneurs d’application. InitContainer[]
revisionSuffix Suffixe convivial ajouté au nom de la révision string
scale Propriétés de mise à l’échelle pour l’application conteneur. Mettre à l'échelle
serviceBinds Liste des services d’application conteneur liés à l’application ServiceBind[]
terminationGracePeriodSeconds Durée facultative en secondes que l’instance d’application conteneur doit se terminer normalement. La valeur doit être un entier non négatif. La valeur zéro indique l’arrêt immédiat via le signal d’arrêt (aucune possibilité de s’arrêter). Si cette valeur est nulle, la période de grâce par défaut est utilisée à la place. Définissez cette valeur plus longtemps que le temps de nettoyage prévu pour votre processus. La valeur par défaut est de 30 secondes. int
volumes Liste des définitions de volume pour l’application conteneur. Volume[]

Conteneur

Nom Description Valeur
args Arguments de commande de démarrage du conteneur. string[]
command Commande de démarrage du conteneur. string[]
env Variables d’environnement de conteneur. EnvironmentVar[]
image Balise d’image conteneur. string
name Nom du conteneur personnalisé. string
probes Liste des sondes pour le conteneur. ContainerAppProbe[]
les ressources Besoins en ressources de conteneur. ContainerResources
volumeMounts Montages de volume de conteneur. VolumeMount[]

EnvironmentVar

Nom Description Valeur
name Nom de la variable d'environnement. string
secretRef Nom du secret Container App à partir duquel extraire la valeur de la variable d’environnement. string
value Valeur de variable d’environnement non secrète. string

ContainerAppProbe

Nom Description Valeur
failureThreshold Échecs consécutifs minimaux pour que la sonde soit considérée comme ayant échoué après avoir réussi. La valeur par défaut est 3. La valeur minimale est 1. La valeur maximale est 10. int
httpGet HTTPGet spécifie la requête http à effectuer. ContainerAppProbeHttpGet
initialDelaySeconds Nombre de secondes après le démarrage du conteneur avant le lancement des probes liveness. La valeur minimale est 1. La valeur maximale est 60. int
periodSeconds Fréquence (en secondes) d’exécution de la probe. La valeur par défaut est 10 secondes. La valeur minimale est 1. La valeur maximale est 240. int
successThreshold Réussites consécutives minimales pour que la sonde soit considérée comme ayant réussi après l’échec. La valeur par défaut est de 1. Doit être 1 pour le liveness et le démarrage. La valeur minimale est 1. La valeur maximale est 10. int
tcpSocket TCPSocket spécifie une action impliquant un port TCP. Les crochets TCP ne sont pas encore pris en charge. ContainerAppProbeTcpSocket
terminationGracePeriodSeconds Durée facultative en secondes, le pod doit se terminer correctement en cas d’échec de la sonde. La période de grâce est la durée en secondes après l’envoi d’un signal de terminaison aux processus en cours d’exécution dans le pod et la durée pendant laquelle les processus sont arrêtés de force avec un signal d’arrêt. Définissez cette valeur plus longtemps que le temps de nettoyage prévu pour votre processus. Si cette valeur est nulle, l’option terminationGracePeriodSeconds du pod est utilisée. Sinon, cette valeur remplace la valeur fournie par la spécification pod. La valeur doit être un entier non négatif. La valeur zéro indique l’arrêt immédiat via le signal d’arrêt (aucune possibilité d’arrêt). Il s’agit d’un champ alpha qui nécessite l’activation de la porte de fonctionnalité ProbeTerminationGracePeriod. La valeur maximale est de 3600 secondes (1 heure) int
timeoutSeconds Nombre de secondes après lesquelles la sonde expire. La valeur par défaut est 1 seconde. La valeur minimale est 1. La valeur maximale est 240. int
type Type de sonde. 'Liveness'
« Préparation »
'Démarrage'

ContainerAppProbeHttpGet

Nom Description Valeur
host Le nom d’hôte auquel se connecter est défini par défaut sur l’ADRESSE IP du pod. Vous souhaitez probablement définir « Host » dans httpHeaders à la place. string
httpHeaders En-têtes personnalisés à définir dans la demande. HTTP autorise les en-têtes répétés. ContainerAppProbeHttpGetHttpHeadersItem[]
path Chemin d’accès sur le serveur HTTP. string
port Nom ou numéro du port à accéder sur le conteneur. Le nombre doit être compris entre 1 et 65535. Le nom doit être un IANA_SVC_NAME. int (obligatoire)
scheme Schéma à utiliser pour la connexion à l’hôte. La valeur par défaut est HTTP. 'HTTP'
'HTTPS'

ContainerAppProbeHttpGetHttpHeadersItem

Nom Description Valeur
name Nom du champ d’en-tête chaîne (obligatoire)
value Valeur du champ d’en-tête chaîne (obligatoire)

ContainerAppProbeTcpSocket

Nom Description Valeur
host Facultatif : nom d’hôte auquel se connecter, valeur par défaut de l’ADRESSE IP du pod. string
port Numéro ou nom du port à accéder sur le conteneur. Le nombre doit être compris entre 1 et 65535. Le nom doit être un IANA_SVC_NAME. int (obligatoire)

ContainerResources

Nom Description Valeur
cpu Processeur requis dans les cœurs, par exemple 0,5 Pour spécifier une valeur décimale, utilisez la fonction json(). décimal int ou json
mémoire Mémoire requise, par exemple « 250 Mo » string

VolumeMount

Nom Description Valeur
mountPath Chemin d’accès dans le conteneur sur lequel le volume doit être monté. Ne doit pas contenir « : ». string
sous-chemin Chemin dans le volume à partir duquel le volume du conteneur doit être monté. La valeur par défaut est « » (racine du volume). string
volumeName Cela doit correspondre au nom d’un volume. string

InitContainer

Nom Description Valeur
args Arguments de commande de démarrage du conteneur. string[]
command Commande de démarrage du conteneur. string[]
env Variables d’environnement de conteneur. EnvironmentVar[]
image Balise d’image conteneur. string
name Nom du conteneur personnalisé. string
les ressources Besoins en ressources de conteneur. ContainerResources
volumeMounts Montages de volume de conteneur. VolumeMount[]

Scale

Nom Description Valeur
maxReplicas facultatif. Nombre maximal de réplicas de conteneur. La valeur par défaut est 10 si elle n’est pas définie. int
minReplicas facultatif. Nombre minimal de réplicas de conteneur. int
rules Règles de mise à l’échelle. ScaleRule[]

ScaleRule

Nom Description Valeur
azureQueue Mise à l’échelle basée sur la file d’attente Azure. QueueScaleRule
custom Règle de mise à l’échelle personnalisée. CustomScaleRule
http Mise à l’échelle basée sur les requêtes HTTP. HttpScaleRule
name Nom de la règle d’échelle string
tcp Mise à l’échelle basée sur les requêtes Tcp. TcpScaleRule

QueueScaleRule

Nom Description Valeur
auth Secrets d’authentification pour la règle d’échelle de file d’attente. ScaleRuleAuth[]
queueLength Longueur de la file d’attente. int
queueName Nom de la file d’attente. string

ScaleRuleAuth

Nom Description Valeur
secretRef Nom du secret à partir duquel extraire les paramètres d’authentification. string
triggerParameter Paramètre déclencheur qui utilise le secret string

CustomScaleRule

Nom Description Valeur
auth Secrets d’authentification pour la règle de mise à l’échelle personnalisée. ScaleRuleAuth[]
metadata Propriétés de métadonnées pour décrire une règle de mise à l’échelle personnalisée. CustomScaleRuleMetadata
type Type de la règle de mise à l’échelle personnalisée
par exemple : azure-servicebus, redis, etc.
string

CustomScaleRuleMetadata

Nom Description Valeur
{propriété personnalisée} string

HttpScaleRule

Nom Description Valeur
auth Secrets d’authentification pour la règle de mise à l’échelle personnalisée. ScaleRuleAuth[]
metadata Propriétés de métadonnées pour décrire la règle d’échelle HTTP. HttpScaleRuleMetadata

HttpScaleRuleMetadata

Nom Description Valeur
{propriété personnalisée} string

TcpScaleRule

Nom Description Valeur
auth Secrets d’authentification pour la règle de mise à l’échelle tcp. ScaleRuleAuth[]
metadata Propriétés de métadonnées pour décrire la règle d’échelle tcp. TcpScaleRuleMetadata

TcpScaleRuleMetadata

Nom Description Valeur
{propriété personnalisée} string

ServiceBind

Nom Description Valeur
clientType Type du client à utiliser pour se connecter au service string
customizedKeys Clés personnalisées pour personnaliser les valeurs injectées dans l’application ServiceBindCustomizedKeys
name Nom de la liaison de service string
serviceId ID de ressource du service cible string

ServiceBindCustomizedKeys

Nom Description Valeur
{propriété personnalisée} string

Volume

Nom Description Valeur
mountOptions Options de montage utilisées lors du montage du partage de fichiers Azure ou du partage de fichiers Azure NFS. Doit être une chaîne séparée par des virgules. string
name Nom du volume. string
secrets Liste des secrets à ajouter dans le volume. Si aucun secret n’est fourni, tous les secrets de la collection sont ajoutés au volume. SecretVolumeItem[]
storageName Nom de la ressource de stockage. Il n’est pas nécessaire de fournir emptyDir et secret. string
storageType Type de stockage pour le volume. Si ce n’est pas le cas, utilisez EmptyDir. 'AzureFile'
'EmptyDir'
'NfsAzureFile'
'Secret'

SecretVolumeItem

Nom Description Valeur
path Chemin d’accès au secret du projet. Si aucun chemin n’est fourni, le chemin d’accès prend par défaut le nom du secret répertorié dans secretRef. string
secretRef Nom du secret d’application conteneur à partir duquel extraire la valeur du secret. string

Modèles de démarrage rapide

Les modèles de démarrage rapide suivants déploient ce type de ressource.

Modèle Description
Crée une application conteneur et un environnement avec Registry

Déployer sur Azure
Créez un environnement d’application conteneur avec une application conteneur de base à partir d’un Azure Container Registry. Il déploie également un espace de travail Log Analytics pour stocker les journaux.
Crée une application conteneur à deux avec un environnement d’application conteneur

Déployer sur Azure
Créez un environnement d’application conteneur à deux avec une application conteneur de base. Il déploie également un espace de travail Log Analytics pour stocker les journaux.
Crée une application conteneur dans un environnement d’application conteneur

Déployer sur Azure
Créez un environnement d’application conteneur avec une application conteneur de base. Il déploie également un espace de travail Log Analytics pour stocker les journaux.
Crée une application conteneur avec une règle de mise à l’échelle HTTP définie

Déployer sur Azure
Créez un environnement d’application conteneur avec une application conteneur de base qui est mise à l’échelle en fonction du trafic HTTP.
Crée un environnement d’application conteneur externe avec un réseau virtuel

Déployer sur Azure
Crée un environnement d’application conteneur externe avec un réseau virtuel.
Crée un environnement d’application conteneur interne avec un réseau virtuel

Déployer sur Azure
Crée un environnement Container App interne avec un réseau virtuel.

Définition de ressources de modèle ARM

Le type de ressource containerApps peut être déployé avec des opérations qui ciblent :

Pour obtenir la liste des propriétés modifiées dans chaque version d’API, consultez journal des modifications.

Format des ressources

Pour créer une ressource Microsoft.App/containerApps, ajoutez le json suivant à votre modèle.

{
  "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"
  }
}

Valeurs de propriétés

containerApps

Nom Description Valeur
type Type de ressource 'Microsoft.App/containerApps'
apiVersion Version de l’API de ressource '2023-11-02-preview'
name Nom de la ressource chaîne (obligatoire)

Limite de caractères : 2-32

Caractères valides :
Lettres minuscules, chiffres et traits d’union.

Doit commencer par une lettre et se terminer par un caractère alphanumérique.
location Emplacement géographique où réside la ressource chaîne (obligatoire)
tags Balises de ressource. Dictionnaire de noms et de valeurs d’étiquettes. Voir Balises dans les modèles
extendedLocation Type complexe de l’emplacement étendu. ExtendedLocation
identité identités managées permettant à l’application conteneur d’interagir avec d’autres services Azure sans conserver de secrets ou d’informations d’identification dans le code. ManagedServiceIdentity
managedBy ID de ressource complet de la ressource qui gère cette ressource. Indique si cette ressource est gérée par une autre ressource Azure. Si cela est présent, le déploiement en mode complet ne supprimera pas la ressource si elle est supprimée du modèle, car elle est gérée par une autre ressource. string
properties Propriétés spécifiques aux ressources ContainerApp ContainerAppProperties

ExtendedLocation

Nom Description Valeur
name Nom de l’emplacement étendu. string
type Type de l’emplacement étendu. 'CustomLocation'

ManagedServiceIdentity

Nom Description Valeur
type Type d’identité de service managé (où les types SystemAssigned et UserAssigned sont autorisés). 'None'
'SystemAssigned'
'SystemAssigned,UserAssigned'
'UserAssigned' (obligatoire)
userAssignedIdentities Ensemble d’identités affectées par l’utilisateur associées à la ressource. Les clés de dictionnaire userAssignedIdentities seront des ID de ressource ARM au format « /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Les valeurs du dictionnaire peuvent être des objets vides ({}) dans les requêtes. UserAssignedIdentities

UserAssignedIdentities

Nom Description Valeur
{propriété personnalisée} userAssignedIdentity

userAssignedIdentity

Cet objet ne contient aucune propriété à définir pendant le déploiement. Toutes les propriétés sont ReadOnly.

ContainerAppProperties

Nom Description Valeur
configuration Propriétés de configuration d’application conteneur non versionnée. Configuration
environmentId ID de ressource de l’environnement. string
managedEnvironmentId Action déconseillée. ID de ressource de l’environnement de l’application conteneur. string
template Définition d’application avec version d’application conteneur. Modèle
workloadProfileName Nom du profil de charge de travail à épingler pour l’exécution de l’application conteneur. string

Configuration

Name Description Valeur
activeRevisionsMode ActiveRevisionsMode contrôle la façon dont les révisions actives sont gérées pour l’application conteneur :
{list} {item} Multiple : plusieurs révisions peuvent être actives. {/item} {item} Unique : une seule révision peut être active à la fois. Les pondérations de révision ne peuvent pas être utilisées dans ce mode. Si aucune valeur n’est fournie, il s’agit de la valeur par défaut. {/item} {/list}
'Multiple'
'Single'
dapr Configuration de Dapr pour l’application conteneur. Dapr
Pénétration Configurations d’entrée. Entrée
maxInactiveRevisions facultatif. Nombre maximal de révisions inactives qu’une application conteneur peut avoir. int
registries Collection d’informations d’identification de registre de conteneurs privés pour les conteneurs utilisés par l’application conteneur RegistryCredentials[]
secrets Collection de secrets utilisés par une application conteneur Secret[]
service Container App pour être un conteneur de développement App Service Service

Dapr

Nom Description Valeur
appId Identificateur d’application Dapr string
appPort Indique à Dapr le port sur lequel votre application écoute int
appProtocol Indique à Dapr quel protocole votre application utilise. Les options valides sont http et grpc. La valeur par défaut est http 'grpc'
'http'
enableApiLogging Active la journalisation des API pour le side-car Dapr bool
enabled Boolean indiquant si le side car Dapr est activé bool
httpMaxRequestSize Augmentation de la taille maximale du paramètre de serveurs http et grpc du corps de la requête en Mo pour gérer le chargement de fichiers volumineux. La valeur par défaut est de 4 Mo. int
httpReadBufferSize Taille maximale dapr de la mémoire tampon de lecture d’en-tête http en Ko à gérer lors de l’envoi d’en-têtes de plusieurs ko. La valeur par défaut est de 65 Ko. int
logLevel Définit le niveau de journal pour le side-car Dapr. Les valeurs autorisées sont débogage, informations, avertissement, erreur. La valeur par défaut est info. 'debug'
'error'
'info'
'avertir'

Entrée

Nom Description Valeur
additionalPortMappings Paramètres pour exposer des ports supplémentaires sur l’application conteneur IngressPortMapping[]
allowInsecure Bool indiquant si les connexions HTTP à sont autorisées. Si la valeur est false HTTP, les connexions sont automatiquement redirigées vers les connexions HTTPS bool
clientCertificateMode Mode certificat client pour l’authentification mTLS. Ignorer indique que le serveur supprime le certificat client lors du transfert. Accept indique que le serveur transfère le certificat client, mais ne nécessite pas de certificat client. Exiger indique que le serveur a besoin d’un certificat client. 'accepter'
'ignore'
'exiger'
corsPolicy Stratégie CORS pour l’application conteneur CorsPolicy
customDomains liaisons de domaine personnalisées pour les noms d’hôte de Container Apps. CustomDomain[]
exposedPort Port exposé dans les conteneurs pour le trafic TCP d’entrée int
external Bool indiquant si l’application expose un point de terminaison http externe bool
ipSecurityRestrictions Règles pour restreindre l’adresse IP entrante. IpSecurityRestrictionRule[]
stickySessions Sessions collantes pour le mode révision unique IngressStickySessions
targetPort Port cible dans les conteneurs pour le trafic d’entrée int
targetPortHttpScheme Si une application http écoute sur http ou https 'http'
'https'
traffic Pondérations du trafic pour les révisions de l’application TrafficWeight[]
transport Protocole de transport d’entrée 'auto'
'http'
'http2'
'tcp'

IngressPortMapping

Nom Description Valeur
exposedPort Spécifie le port exposé pour le port cible. S’il n’est pas spécifié, il est défini par défaut sur le port cible int
external Spécifie si le port d’application est accessible en dehors de l’environnement bool (obligatoire)
targetPort Spécifie que le conteneur de l’utilisateur de port écoute sur int (obligatoire)

CorsPolicy

Nom Description Valeur
allowCredentials Spécifie si la ressource autorise les informations d’identification bool
allowedHeaders Spécifie le contenu de l’en-tête access-control-allow-headers string[]
allowedMethods Spécifie le contenu de l’en-tête access-control-allow-methods string[]
allowedOrigins Spécifie le contenu de l’en-tête access-control-allow-origins string[] (obligatoire)
exposeHeaders Spécifie le contenu de l’en-tête access-control-expose-headers string[]
maxAge Spécifie le contenu de l’en-tête access-control-max-age int

CustomDomain

Nom Description Valeur
bindingType Custom Domain type de liaison. 'Désactivé'
'SniEnabled'
certificateId ID de ressource du certificat à lier à ce nom d’hôte. Doit exister dans l’environnement managé. string
name Nom d'hôte. chaîne (obligatoire)

IpSecurityRestrictionRule

Nom Description Valeur
action Autoriser ou refuser les règles à déterminer pour l’adresse IP entrante. Remarque : Les règles peuvent uniquement se composer de ALL Allow ou ALL Deny 'Autoriser'
'Deny' (obligatoire)
description Décrire la règle de restriction IP envoyée à l’application conteneur. Ce champ est facultatif. string
ipAddressRange Notation CIDR pour correspondre à l’adresse IP entrante chaîne (obligatoire)
name Nom de la règle de restriction IP. chaîne (obligatoire)

IngressStickySessions

Nom Description Valeur
affinité Affinité de session collante 'none'
'collant'

TrafficWeight

Nom Description Valeur
label Associe une étiquette de trafic à une révision string
latestRevision Indique que le poids du trafic appartient à une révision stable la plus récente bool
revisionName Nom d’une révision string
poids Poids du trafic attribué à une révision int

RegistryCredentials

Nom Description Valeur
identité Identité managée à utiliser pour l’authentification auprès de Azure Container Registry. Pour les identités attribuées par l’utilisateur, utilisez l’ID de ressource d’identité entièrement attribué par l’utilisateur. Pour les identités attribuées par le système, utilisez « système » string
passwordSecretRef Nom du secret qui contient le mot de passe de connexion au Registre string
server Serveur Container Registry string
username Nom d’utilisateur container Registry string

Secret

Nom Description Valeur
identité ID de ressource d’une identité managée pour l’authentification auprès d’Azure Key Vault ou système pour utiliser une identité affectée par le système. string
keyVaultUrl Azure Key Vault URL pointant vers le secret référencé par l’application conteneur. string
name Nom du secret. string
value Valeur secrète. string

Contraintes :
Valeur sensible. Passez en tant que paramètre sécurisé.

Service

Nom Description Valeur
type Type de service ContainerApp dev chaîne (obligatoire)

Modèle

Nom Description Valeur
containers Liste des définitions de conteneur pour l’application conteneur. Conteneur[]
initContainers Liste des conteneurs spécialisés qui s’exécutent avant les conteneurs d’application. InitContainer[]
revisionSuffix Suffixe convivial ajouté au nom de la révision string
scale Propriétés de mise à l’échelle pour l’application conteneur. Mettre à l'échelle
serviceBinds Liste des services d’application conteneur liés à l’application ServiceBind[]
terminationGracePeriodSeconds Durée facultative en secondes que l’instance d’application conteneur doit se terminer correctement. La valeur doit être un entier non négatif. La valeur zéro indique l’arrêt immédiat via le signal d’arrêt (aucune possibilité d’arrêt). Si cette valeur est nulle, la période de grâce par défaut est utilisée à la place. Définissez cette valeur plus longtemps que le temps de nettoyage prévu pour votre processus. La valeur par défaut est de 30 secondes. int
volumes Liste des définitions de volume pour l’application conteneur. Volume[]

Conteneur

Nom Description Valeur
args Arguments de commande de démarrage du conteneur. string[]
command Commande de démarrage du conteneur. string[]
env Variables d’environnement de conteneur. EnvironmentVar[]
image Balise d’image conteneur. string
name Nom du conteneur personnalisé. string
probes Liste des sondes pour le conteneur. ContainerAppProbe[]
les ressources Besoins en ressources de conteneur. ContainerResources
volumeMounts Montages de volume de conteneur. VolumeMount[]

EnvironmentVar

Nom Description Valeur
name Nom de la variable d'environnement. string
secretRef Nom du secret Container App à partir duquel extraire la valeur de la variable d’environnement. string
value Valeur de variable d’environnement non secrète. string

ContainerAppProbe

Nom Description Valeur
failureThreshold Échecs consécutifs minimaux pour que la sonde soit considérée comme ayant échoué après avoir réussi. La valeur par défaut est 3. La valeur minimale est 1. La valeur maximale est 10. int
httpGet HTTPGet spécifie la requête http à effectuer. ContainerAppProbeHttpGet
initialDelaySeconds Nombre de secondes après le démarrage du conteneur avant le lancement des probes liveness. La valeur minimale est 1. La valeur maximale est 60. int
periodSeconds Fréquence (en secondes) d’exécution de la probe. La valeur par défaut est 10 secondes. La valeur minimale est 1. La valeur maximale est 240. int
successThreshold Réussites consécutives minimales pour que la sonde soit considérée comme ayant réussi après l’échec. La valeur par défaut est de 1. Doit être 1 pour le liveness et le démarrage. La valeur minimale est 1. La valeur maximale est 10. int
tcpSocket TCPSocket spécifie une action impliquant un port TCP. Les crochets TCP ne sont pas encore pris en charge. ContainerAppProbeTcpSocket
terminationGracePeriodSeconds Durée facultative en secondes, le pod doit se terminer correctement en cas d’échec de la sonde. La période de grâce est la durée en secondes après l’envoi d’un signal de terminaison aux processus en cours d’exécution dans le pod et la durée pendant laquelle les processus sont arrêtés de force avec un signal d’arrêt. Définissez cette valeur plus longtemps que le temps de nettoyage prévu pour votre processus. Si cette valeur est nulle, l’option terminationGracePeriodSeconds du pod est utilisée. Sinon, cette valeur remplace la valeur fournie par la spécification pod. La valeur doit être un entier non négatif. La valeur zéro indique l’arrêt immédiat via le signal d’arrêt (aucune possibilité d’arrêt). Il s’agit d’un champ alpha qui nécessite l’activation de la porte de fonctionnalité ProbeTerminationGracePeriod. La valeur maximale est de 3600 secondes (1 heure) int
timeoutSeconds Nombre de secondes après lesquelles la sonde expire. La valeur par défaut est 1 seconde. La valeur minimale est 1. La valeur maximale est 240. int
type Type de sonde. 'Liveness'
« Préparation »
'Démarrage'

ContainerAppProbeHttpGet

Nom Description Valeur
host Le nom d’hôte auquel se connecter est défini par défaut sur l’ADRESSE IP du pod. Vous souhaitez probablement définir « Host » dans httpHeaders à la place. string
httpHeaders En-têtes personnalisés à définir dans la demande. HTTP autorise les en-têtes répétés. ContainerAppProbeHttpGetHttpHeadersItem[]
path Chemin d’accès sur le serveur HTTP. string
port Nom ou numéro du port à accéder sur le conteneur. Le nombre doit être compris entre 1 et 65535. Le nom doit être un IANA_SVC_NAME. int (obligatoire)
scheme Schéma à utiliser pour la connexion à l’hôte. La valeur par défaut est HTTP. 'HTTP'
'HTTPS'

ContainerAppProbeHttpGetHttpHeadersItem

Nom Description Valeur
name Nom du champ d’en-tête chaîne (obligatoire)
value Valeur du champ d’en-tête chaîne (obligatoire)

ContainerAppProbeTcpSocket

Nom Description Valeur
host Facultatif : nom d’hôte auquel se connecter, valeur par défaut de l’ADRESSE IP du pod. string
port Numéro ou nom du port à accéder sur le conteneur. Le nombre doit être compris entre 1 et 65535. Le nom doit être un IANA_SVC_NAME. int (obligatoire)

ContainerResources

Nom Description Valeur
cpu Processeur requis dans les cœurs, par exemple 0,5 Pour spécifier une valeur décimale, utilisez la fonction json(). décimal int ou json
mémoire Mémoire requise, par exemple « 250 Mo » string

VolumeMount

Nom Description Valeur
mountPath Chemin d’accès dans le conteneur sur lequel le volume doit être monté. Ne doit pas contenir « : ». string
sous-chemin Chemin dans le volume à partir duquel le volume du conteneur doit être monté. La valeur par défaut est « » (racine du volume). string
volumeName Cela doit correspondre au nom d’un volume. string

InitContainer

Nom Description Valeur
args Arguments de commande de démarrage du conteneur. string[]
command Commande de démarrage du conteneur. string[]
env Variables d’environnement de conteneur. EnvironmentVar[]
image Balise d’image conteneur. string
name Nom du conteneur personnalisé. string
les ressources Besoins en ressources de conteneur. ContainerResources
volumeMounts Montages de volume de conteneur. VolumeMount[]

Scale

Nom Description Valeur
maxReplicas facultatif. Nombre maximal de réplicas de conteneur. La valeur par défaut est 10 si elle n’est pas définie. int
minReplicas facultatif. Nombre minimal de réplicas de conteneur. int
rules Règles de mise à l’échelle. ScaleRule[]

ScaleRule

Nom Description Valeur
azureQueue Mise à l’échelle basée sur la file d’attente Azure. QueueScaleRule
custom Règle de mise à l’échelle personnalisée. CustomScaleRule
http Mise à l’échelle basée sur les requêtes HTTP. HttpScaleRule
name Nom de la règle d’échelle string
tcp Mise à l’échelle basée sur les requêtes Tcp. TcpScaleRule

QueueScaleRule

Nom Description Valeur
auth Secrets d’authentification pour la règle de mise à l’échelle de la file d’attente. ScaleRuleAuth[]
queueLength Longueur de la file d’attente. int
queueName Nom de la file d’attente. string

ScaleRuleAuth

Nom Description Valeur
secretRef Nom du secret à partir duquel extraire les params d’authentification. string
triggerParameter Paramètre de déclencheur qui utilise le secret string

CustomScaleRule

Nom Description Valeur
auth Secrets d’authentification pour la règle de mise à l’échelle personnalisée. ScaleRuleAuth[]
metadata Propriétés de métadonnées pour décrire une règle de mise à l’échelle personnalisée. CustomScaleRuleMetadata
type Type de la règle de mise à l’échelle personnalisée
par exemple : azure-servicebus, redis, etc.
string

CustomScaleRuleMetadata

Nom Description Valeur
{propriété personnalisée} string

HttpScaleRule

Nom Description Valeur
auth Secrets d’authentification pour la règle de mise à l’échelle personnalisée. ScaleRuleAuth[]
metadata Propriétés de métadonnées pour décrire la règle de mise à l’échelle http. HttpScaleRuleMetadata

HttpScaleRuleMetadata

Nom Description Valeur
{propriété personnalisée} string

TcpScaleRule

Nom Description Valeur
auth Secrets d’authentification pour la règle de mise à l’échelle tcp. ScaleRuleAuth[]
metadata Propriétés de métadonnées pour décrire la règle de mise à l’échelle tcp. TcpScaleRuleMetadata

TcpScaleRuleMetadata

Nom Description Valeur
{propriété personnalisée} string

ServiceBind

Nom Description Valeur
clientType Type du client à utiliser pour se connecter au service string
CustomKeys Clés personnalisées pour personnaliser les valeurs injectées dans l’application ServiceBindCustomizedKeys
name Nom de la liaison de service string
serviceId ID de ressource du service cible string

ServiceBindCustomizedKeys

Nom Description Valeur
{propriété personnalisée} string

Volume

Nom Description Valeur
mountOptions Options de montage utilisées lors du montage du partage de fichiers Azure ou du partage de fichiers Azure NFS. Doit être une chaîne séparée par des virgules. string
name Nom du volume. string
secrets Liste des secrets à ajouter dans le volume. Si aucun secret n’est fourni, tous les secrets de la collection sont ajoutés au volume. SecretVolumeItem[]
storageName Nom de la ressource de stockage. Il n’est pas nécessaire de fournir emptyDir et secret. string
storageType Type de stockage pour le volume. Si ce n’est pas le cas, utilisez EmptyDir. 'AzureFile'
'EmptyDir'
'NfsAzureFile'
'Secret'

SecretVolumeItem

Nom Description Valeur
path Chemin d’accès au secret du projet. Si aucun chemin n’est fourni, le chemin d’accès prend par défaut le nom du secret répertorié dans secretRef. string
secretRef Nom du secret d’application conteneur à partir duquel extraire la valeur du secret. string

Modèles de démarrage rapide

Les modèles de démarrage rapide suivants déploient ce type de ressource.

Modèle Description
Crée une application conteneur et un environnement avec Registry

Déployer sur Azure
Créez un environnement d’application conteneur avec une application conteneur de base à partir d’un Azure Container Registry. Il déploie également un espace de travail Log Analytics pour stocker les journaux.
Crée une application conteneur à deux avec un environnement d’application conteneur

Déployer sur Azure
Créez un environnement d’application conteneur à deux avec une application conteneur de base. Il déploie également un espace de travail Log Analytics pour stocker les journaux.
Crée une application conteneur dans un environnement d’application conteneur

Déployer sur Azure
Créez un environnement d’application conteneur avec une application conteneur de base. Il déploie également un espace de travail Log Analytics pour stocker les journaux.
Crée une application conteneur avec une règle de mise à l’échelle HTTP définie

Déployer sur Azure
Créez un environnement d’application conteneur avec une application conteneur de base qui est mise à l’échelle en fonction du trafic HTTP.
Crée un environnement d’application conteneur externe avec un réseau virtuel

Déployer sur Azure
Crée un environnement d’application conteneur externe avec un réseau virtuel.
Crée un environnement d’application conteneur interne avec un réseau virtuel

Déployer sur Azure
Crée un environnement Container App interne avec un réseau virtuel.

Définition de ressource Terraform (fournisseur AzAPI)

Le type de ressource containerApps peut être déployé avec des opérations qui ciblent :

  • Groupes de ressources

Pour obtenir la liste des propriétés modifiées dans chaque version d’API, consultez journal des modifications.

Format des ressources

Pour créer une ressource Microsoft.App/containerApps, ajoutez le Terraform suivant à votre modèle.

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"
  })
}

Valeurs de propriétés

containerApps

Nom Description Valeur
type Type de ressource « Microsoft.App/containerApps@2023-11-02-preview »
name Nom de la ressource string (obligatoire)

Limite de caractères : 2-32

Caractères valides :
Lettres minuscules, chiffres et traits d’union.

Doit commencer par une lettre et se terminer par un caractère alphanumérique.
location Emplacement géographique où réside la ressource string (obligatoire)
parent_id Pour effectuer un déploiement dans un groupe de ressources, utilisez l’ID de ce groupe de ressources. string (obligatoire)
tags Balises de ressource. Dictionnaire de noms et de valeurs d’étiquettes.
extendedLocation Type complexe de l’emplacement étendu. ExtendedLocation
identité identités managées permettant à l’application conteneur d’interagir avec d’autres services Azure sans conserver de secrets ou d’informations d’identification dans le code. ManagedServiceIdentity
managedBy ID de ressource complet de la ressource qui gère cette ressource. Indique si cette ressource est gérée par une autre ressource Azure. Si cela est présent, le déploiement en mode complet ne supprime pas la ressource si elle est supprimée du modèle, car elle est gérée par une autre ressource. string
properties Propriétés spécifiques à la ressource ContainerApp ContainerAppProperties

ExtendedLocation

Nom Description Valeur
name Nom de l’emplacement étendu. string
type Type de l’emplacement étendu. « CustomLocation »

ManagedServiceIdentity

Nom Description Valeur
type Type d’identité de service managé (où les types SystemAssigned et UserAssigned sont autorisés). « SystemAssigned »
« SystemAssigned,UserAssigned »
« UserAssigned » (obligatoire)
identity_ids Ensemble d’identités affectées par l’utilisateur associées à la ressource. Les clés de dictionnaire userAssignedIdentities sont des ID de ressource ARM au format : '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Les valeurs du dictionnaire peuvent être des objets vides ({}) dans les requêtes. Tableau d’ID d’identité utilisateur.

UserAssignedIdentities

Nom Description Valeur
{propriété personnalisée} userAssignedIdentity

userAssignedIdentity

Cet objet ne contient aucune propriété à définir pendant le déploiement. Toutes les propriétés sont ReadOnly.

ContainerAppProperties

Nom Description Valeur
configuration Propriétés de configuration de l’application conteneur sans version. Configuration
environmentId ID de ressource de l’environnement. string
managedEnvironmentId Action déconseillée. ID de ressource de l’environnement de l’application conteneur. string
template Définition d’application avec version d’application conteneur. Modèle
workloadProfileName Nom du profil de charge de travail à épingler pour l’exécution de l’application conteneur. string

Configuration

Name Description Valeur
activeRevisionsMode ActiveRevisionsMode contrôle la façon dont les révisions actives sont gérées pour l’application conteneur :
{list} {item} Multiple : plusieurs révisions peuvent être actives. {/item} {item} Unique : une seule révision peut être active à la fois. Les pondérations de révision ne peuvent pas être utilisées dans ce mode. Si aucune valeur n’est fournie, il s’agit de la valeur par défaut. {/item} {/list}
« Multiple »
« Single »
dapr Configuration Dapr pour l’application conteneur. Dapr
Pénétration Configurations d’entrée. Entrée
maxInactiveRevisions facultatif. Nombre maximal de révisions inactives qu’une application conteneur peut avoir. int
registries Collection d’informations d’identification du registre de conteneurs privé pour les conteneurs utilisés par l’application conteneur RegistryCredentials[]
secrets Collection de secrets utilisés par une application conteneur Secret[]
service Container App pour être un App Service de conteneur de développement Service

Dapr

Nom Description Valeur
appId Identificateur d’application Dapr string
appPort Indique à Dapr le port sur lequel votre application écoute int
appProtocol Indique à Dapr quel protocole votre application utilise. Les options valides sont http et grpc. La valeur par défaut est http « grpc »
« http »
enableApiLogging Active la journalisation des API pour le side-car Dapr bool
enabled Boolean indiquant si le side-car Dapr est activé bool
httpMaxRequestSize Augmentation de la taille maximale du paramètre de serveurs http et grpc du corps de la requête en Mo pour gérer le chargement de fichiers volumineux. La valeur par défaut est de 4 Mo. int
httpReadBufferSize Taille maximale dapr de la mémoire tampon de lecture d’en-tête http en Ko à gérer lors de l’envoi d’en-têtes de plusieurs Ko. La valeur par défaut est 65 Ko. int
logLevel Définit le niveau de journalisation pour le side-car Dapr. Les valeurs autorisées sont debug, info, warn, error. La valeur par défaut est info. « debug »
« erreur »
« info »
« avertir »

Entrée

Nom Description Valeur
additionalPortMappings Paramètres pour exposer des ports supplémentaires sur l’application conteneur IngressPortMapping[]
allowInsecure Bool indiquant si les connexions HTTP à sont autorisées. Si la valeur est false, les connexions HTTP sont automatiquement redirigées vers les connexions HTTPS bool
clientCertificateMode Mode de certificat client pour l’authentification mTLS. Ignorer indique que le serveur supprime le certificat client lors du transfert. Accepter indique que le serveur transfère le certificat client, mais ne nécessite pas de certificat client. Exiger indique que le serveur a besoin d’un certificat client. « accepter »
« ignore »
« require »
corsPolicy Stratégie CORS pour l’application conteneur CorsPolicy
customDomains liaisons de domaine personnalisées pour les noms d’hôte de Container Apps. CustomDomain[]
exposedPort Port exposé dans les conteneurs pour le trafic TCP provenant de l’entrée int
external Bool indiquant si l’application expose un point de terminaison HTTP externe bool
ipSecurityRestrictions Règles pour restreindre l’adresse IP entrante. IpSecurityRestrictionRule[]
stickySessions Sessions persistantes pour le mode révision unique IngressStickySessions
targetPort Port cible dans les conteneurs pour le trafic en provenance de l’entrée int
targetPortHttpScheme Si une application http écoute sur http ou https « http »
« https »
traffic Poids du trafic pour les révisions de l’application TrafficWeight[]
transport Protocole de transport d’entrée « auto »
« http »
« http2 »
« tcp »

IngressPortMapping

Nom Description Valeur
exposedPort Spécifie le port exposé pour le port cible. S’il n’est pas spécifié, il est défini par défaut sur le port cible int
external Spécifie si le port de l’application est accessible en dehors de l’environnement bool (obligatoire)
targetPort Spécifie que le conteneur de l’utilisateur du port écoute sur int (obligatoire)

CorsPolicy

Nom Description Valeur
allowCredentials Spécifie si la ressource autorise les informations d’identification bool
allowedHeaders Spécifie le contenu de l’en-tête access-control-allow-headers string[]
allowedMethods Spécifie le contenu de l’en-tête access-control-allow-methods string[]
allowedOrigins Spécifie le contenu de l’en-tête access-control-allow-origins string[] (obligatoire)
exposeHeaders Spécifie le contenu de l’en-tête access-control-expose-headers string[]
maxAge Spécifie le contenu de l’en-tête access-control-max-age int

CustomDomain

Nom Description Valeur
bindingType Custom Domain type de liaison. « Désactivé »
« SniEnabled »
certificateId ID de ressource du certificat à lier à ce nom d’hôte. Doit exister dans l’environnement managé. string
name Nom d'hôte. chaîne (obligatoire)

IpSecurityRestrictionRule

Nom Description Valeur
action Autoriser ou refuser les règles à déterminer pour l’adresse IP entrante. Remarque : Les règles peuvent uniquement se composer de ALL Allow ou ALL Deny « Autoriser »
« Refuser » (obligatoire)
description Décrire la règle de restriction IP envoyée à l’application conteneur. Ce champ est facultatif. string
ipAddressRange Notation CIDR pour correspondre à l’adresse IP entrante chaîne (obligatoire)
name Nom de la règle de restriction IP. chaîne (obligatoire)

IngressStickySessions

Nom Description Valeur
affinité Affinité de session collante « none »
« collant »

TrafficWeight

Nom Description Valeur
label Associe une étiquette de trafic à une révision string
latestRevision Indique que le poids du trafic appartient à une révision stable la plus récente bool
revisionName Nom d’une révision string
poids Poids du trafic attribué à une révision int

RegistryCredentials

Nom Description Valeur
identité Identité managée à utiliser pour l’authentification auprès de Azure Container Registry. Pour les identités attribuées par l’utilisateur, utilisez l’ID de ressource d’identité entièrement attribué par l’utilisateur. Pour les identités attribuées par le système, utilisez « système » string
passwordSecretRef Nom du secret qui contient le mot de passe de connexion au Registre string
server Serveur Container Registry string
username Nom d’utilisateur container Registry string

Secret

Nom Description Valeur
identité ID de ressource d’une identité managée pour l’authentification auprès d’Azure Key Vault ou système pour utiliser une identité affectée par le système. string
keyVaultUrl Azure Key Vault URL pointant vers le secret référencé par l’application conteneur. string
name Nom du secret. string
value Valeur secrète. string

Contraintes :
Valeur sensible. Passez en tant que paramètre sécurisé.

Service

Nom Description Valeur
type Type de service ContainerApp dev chaîne (obligatoire)

Modèle

Nom Description Valeur
containers Liste des définitions de conteneur pour l’application conteneur. Conteneur[]
initContainers Liste des conteneurs spécialisés qui s’exécutent avant les conteneurs d’application. InitContainer[]
revisionSuffix Suffixe convivial ajouté au nom de la révision string
scale Propriétés de mise à l’échelle pour l’application conteneur. Mettre à l'échelle
serviceBinds Liste des services d’application conteneur liés à l’application ServiceBind[]
terminationGracePeriodSeconds Durée facultative en secondes que l’instance d’application conteneur doit se terminer correctement. La valeur doit être un entier non négatif. La valeur zéro indique l’arrêt immédiat via le signal d’arrêt (aucune possibilité d’arrêt). Si cette valeur est nulle, la période de grâce par défaut est utilisée à la place. Définissez cette valeur plus longtemps que le temps de nettoyage prévu pour votre processus. La valeur par défaut est de 30 secondes. int
volumes Liste des définitions de volume pour l’application conteneur. Volume[]

Conteneur

Nom Description Valeur
args Arguments de commande de démarrage du conteneur. string[]
command Commande de démarrage du conteneur. string[]
env Variables d’environnement de conteneur. EnvironmentVar[]
image Balise d’image conteneur. string
name Nom du conteneur personnalisé. string
probes Liste des sondes pour le conteneur. ContainerAppProbe[]
les ressources Besoins en ressources de conteneur. ContainerResources
volumeMounts Montages de volume de conteneur. VolumeMount[]

EnvironmentVar

Nom Description Valeur
name Nom de la variable d'environnement. string
secretRef Nom du secret Container App à partir duquel extraire la valeur de la variable d’environnement. string
value Valeur de variable d’environnement non secrète. string

ContainerAppProbe

Nom Description Valeur
failureThreshold Échecs consécutifs minimaux pour que la sonde soit considérée comme ayant échoué après avoir réussi. La valeur par défaut est 3. La valeur minimale est 1. La valeur maximale est 10. int
httpGet HTTPGet spécifie la requête http à effectuer. ContainerAppProbeHttpGet
initialDelaySeconds Nombre de secondes après le démarrage du conteneur avant le lancement des probes liveness. La valeur minimale est 1. La valeur maximale est 60. int
periodSeconds Fréquence (en secondes) d’exécution de la probe. La valeur par défaut est 10 secondes. La valeur minimale est 1. La valeur maximale est 240. int
successThreshold Réussites consécutives minimales pour que la sonde soit considérée comme ayant réussi après l’échec. La valeur par défaut est de 1. Doit être 1 pour le liveness et le démarrage. La valeur minimale est 1. La valeur maximale est 10. int
tcpSocket TCPSocket spécifie une action impliquant un port TCP. Les crochets TCP ne sont pas encore pris en charge. ContainerAppProbeTcpSocket
terminationGracePeriodSeconds Durée facultative en secondes, le pod doit se terminer correctement en cas d’échec de la sonde. La période de grâce est la durée en secondes après l’envoi d’un signal de terminaison aux processus en cours d’exécution dans le pod et la durée pendant laquelle les processus sont arrêtés de force avec un signal d’arrêt. Définissez cette valeur plus longtemps que le temps de nettoyage prévu pour votre processus. Si cette valeur est nulle, l’option terminationGracePeriodSeconds du pod est utilisée. Sinon, cette valeur remplace la valeur fournie par la spécification pod. La valeur doit être un entier non négatif. La valeur zéro indique l’arrêt immédiat via le signal d’arrêt (aucune possibilité d’arrêt). Il s’agit d’un champ alpha qui nécessite l’activation de la porte de fonctionnalité ProbeTerminationGracePeriod. La valeur maximale est de 3600 secondes (1 heure) int
timeoutSeconds Nombre de secondes après lesquelles la sonde expire. La valeur par défaut est 1 seconde. La valeur minimale est 1. La valeur maximale est 240. int
type Type de sonde. « Liveness »
« Préparation »
« Démarrage »

ContainerAppProbeHttpGet

Nom Description Valeur
host Le nom d’hôte auquel se connecter est défini par défaut sur l’ADRESSE IP du pod. Vous souhaitez probablement définir « Host » dans httpHeaders à la place. string
httpHeaders En-têtes personnalisés à définir dans la demande. HTTP autorise les en-têtes répétés. ContainerAppProbeHttpGetHttpHeadersItem[]
path Chemin d’accès sur le serveur HTTP. string
port Nom ou numéro du port à accéder sur le conteneur. Le nombre doit être compris entre 1 et 65535. Le nom doit être un IANA_SVC_NAME. int (obligatoire)
scheme Schéma à utiliser pour la connexion à l’hôte. La valeur par défaut est HTTP. "HTTP"
« HTTPS »

ContainerAppProbeHttpGetHttpHeadersItem

Nom Description Valeur
name Nom du champ d’en-tête chaîne (obligatoire)
value Valeur du champ d’en-tête chaîne (obligatoire)

ContainerAppProbeTcpSocket

Nom Description Valeur
host Facultatif : nom d’hôte auquel se connecter, valeur par défaut de l’ADRESSE IP du pod. string
port Numéro ou nom du port à accéder sur le conteneur. Le nombre doit être compris entre 1 et 65535. Le nom doit être un IANA_SVC_NAME. int (obligatoire)

ContainerResources

Nom Description Valeur
cpu Processeur requis dans les cœurs, par exemple 0,5 Spécifiez une valeur décimale sous forme de chaîne. décimal int ou json
mémoire Mémoire requise, par exemple « 250 Mo » string

VolumeMount

Nom Description Valeur
mountPath Chemin d’accès dans le conteneur sur lequel le volume doit être monté. Ne doit pas contenir ' :'. string
subPath Chemin dans le volume à partir duquel le volume du conteneur doit être monté. La valeur par défaut est « » (racine du volume). string
volumeName Cela doit correspondre au nom d’un volume. string

InitContainer

Nom Description Valeur
args Arguments de commande de démarrage du conteneur. string[]
command Commande de démarrage du conteneur. string[]
env Variables d’environnement de conteneur. EnvironmentVar[]
image Balise d’image conteneur. string
name Nom du conteneur personnalisé. string
les ressources Besoins en ressources de conteneur. ContainerResources
volumeMounts Montages de volumes de conteneur. VolumeMount[]

Scale

Nom Description Valeur
maxReplicas facultatif. Nombre maximal de réplicas de conteneur. La valeur par défaut est 10 si elle n’est pas définie. int
minReplicas facultatif. Nombre minimal de réplicas de conteneur. int
rules Règles de mise à l’échelle. ScaleRule[]

ScaleRule

Nom Description Valeur
azureQueue Mise à l’échelle basée sur la file d’attente Azure. QueueScaleRule
custom Règle de mise à l’échelle personnalisée. CustomScaleRule
http Mise à l’échelle basée sur les requêtes HTTP. HttpScaleRule
name Nom de la règle d’échelle string
tcp Mise à l’échelle basée sur les requêtes Tcp. TcpScaleRule

QueueScaleRule

Nom Description Valeur
auth Secrets d’authentification pour la règle d’échelle de file d’attente. ScaleRuleAuth[]
queueLength Longueur de la file d’attente. int
queueName Nom de la file d’attente. string

ScaleRuleAuth

Nom Description Valeur
secretRef Nom du secret à partir duquel extraire les paramètres d’authentification. string
triggerParameter Paramètre déclencheur qui utilise le secret string

CustomScaleRule

Nom Description Valeur
auth Secrets d’authentification pour la règle de mise à l’échelle personnalisée. ScaleRuleAuth[]
metadata Propriétés de métadonnées pour décrire une règle de mise à l’échelle personnalisée. CustomScaleRuleMetadata
type Type de la règle de mise à l’échelle personnalisée
par exemple : azure-servicebus, redis, etc.
string

CustomScaleRuleMetadata

Nom Description Valeur
{propriété personnalisée} string

HttpScaleRule

Nom Description Valeur
auth Secrets d’authentification pour la règle de mise à l’échelle personnalisée. ScaleRuleAuth[]
metadata Propriétés de métadonnées pour décrire la règle de mise à l’échelle http. HttpScaleRuleMetadata

HttpScaleRuleMetadata

Nom Description Valeur
{propriété personnalisée} string

TcpScaleRule

Nom Description Valeur
auth Secrets d’authentification pour la règle de mise à l’échelle tcp. ScaleRuleAuth[]
metadata Propriétés de métadonnées pour décrire la règle de mise à l’échelle tcp. TcpScaleRuleMetadata

TcpScaleRuleMetadata

Nom Description Valeur
{propriété personnalisée} string

ServiceBind

Nom Description Valeur
clientType Type du client à utiliser pour se connecter au service string
CustomKeys Clés personnalisées pour personnaliser les valeurs injectées dans l’application ServiceBindCustomizedKeys
name Nom de la liaison de service string
serviceId ID de ressource du service cible string

ServiceBindCustomizedKeys

Nom Description Valeur
{propriété personnalisée} string

Volume

Nom Description Valeur
mountOptions Options de montage utilisées lors du montage du partage de fichiers Azure ou du partage de fichiers Azure NFS. Doit être une chaîne séparée par des virgules. string
name Nom du volume. string
secrets Liste des secrets à ajouter dans le volume. Si aucun secret n’est fourni, tous les secrets de la collection seront ajoutés au volume. SecretVolumeItem[]
storageName Nom de la ressource de stockage. Il n’est pas nécessaire de fournir EmptyDir et Secret. string
storageType Type de stockage pour le volume. S’il n’est pas fourni, utilisez EmptyDir. « AzureFile »
« EmptyDir »
« NfsAzureFile »
« Secret »

SecretVolumeItem

Nom Description Valeur
path Chemin d’accès au secret du projet. Si aucun chemin n’est fourni, le chemin d’accès est défini par défaut sur le nom du secret répertorié dans secretRef. string
secretRef Nom du secret d’application conteneur à partir duquel extraire la valeur du secret. string