Microsoft.App containerApps
Définition de ressource Bicep
Le type de ressource containerApps peut être déployé avec des opérations qui ciblent :
- Groupes de ressources - Voir commandes de déploiement de groupe 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 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 |
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 |
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 |
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 |
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 |
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 |
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 :
- Groupes de ressources - Voir commandes de déploiement de groupe 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 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 |
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 |
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 |
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 |
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 |
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 |
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 |
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour