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 de l’API, consultez journal des modifications.
Pour créer une ressource Microsoft.App/containerApps, ajoutez le bicep suivant à votre modèle.
resource symbolicname 'Microsoft.App/containerApps@2022-01-01-preview' = {
identity: {
type: 'string'
userAssignedIdentities: {
{customized property}: {}
}
}
location: 'string'
name: 'string'
properties: {
configuration: {
activeRevisionsMode: 'string'
dapr: {
appId: 'string'
appPort: int
appProtocol: 'string'
enabled: bool
}
ingress: {
allowInsecure: bool
customDomains: [
{
bindingType: 'string'
certificateId: 'string'
name: 'string'
}
]
external: bool
targetPort: int
traffic: [
{
latestRevision: bool
revisionName: 'string'
weight: int
}
]
transport: 'string'
}
registries: [
{
passwordSecretRef: 'string'
server: 'string'
username: 'string'
}
]
secrets: [
{
name: 'string'
value: '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: int
memory: 'string'
}
volumeMounts: [
{
mountPath: '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'
}
]
}
volumes: [
{
name: 'string'
storageName: 'string'
storageType: 'string'
}
]
}
}
tags: {
{customized property}: 'string'
}
}
Valeurs de propriété
Configuration
Nom |
Description |
Valeur |
activeRevisionsMode |
ActiveRevisionsMode contrôle la façon dont les révisions actives sont gérées pour l’application conteneur :
<liste><élément>Multiple : plusieurs révisions peuvent être actives. Si aucune valeur n’est fournie, il s’agit de la valeur par défaut</item><élément>Single : une seule révision peut être active à la fois. Les pondérations de révision ne peuvent pas être utilisées dans ce mode</item></list> |
'Multiple' 'Single' |
dapr |
Configuration dapr pour l’application conteneur. |
Dapr |
entrée |
Configurations d’entrée. |
Entrée |
Registres |
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[] |
Conteneur
Nom |
Description |
Valeur |
args |
Arguments de commande de démarrage du conteneur. |
string[] |
commander |
Commande de démarrage du conteneur. |
string[] |
Env |
Variables d’environnement de conteneur. |
EnvironmentVar[] |
image |
Balise d’image conteneur. |
corde |
nom |
Nom du conteneur personnalisé. |
corde |
Sondes |
Liste des sondes pour le conteneur. |
containerAppProbe[] |
ressources |
Exigences en matière de ressources de conteneur. |
ContainerResources |
volumeMounts |
Montages de volumes de conteneurs. |
VolumeMount[] |
ContainerAppProbe
Nom |
Description |
Valeur |
failureThreshold |
Échecs consécutifs minimum 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 l’initialisation des sondes liveness. La valeur minimale est 1. La valeur maximale est 60. |
Int |
periodSeconds |
Fréquence (en secondes) d’exécution de la sonde. La valeur par défaut est de 10 secondes. La valeur minimale est 1. La valeur maximale est 240. |
Int |
successThreshold |
Nombre minimal de réussites consécutives pour que la sonde soit considérée comme réussie après avoir échoué. La valeur par défaut est 1. Doit être 1 pour la vie 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 hooks TCP ne sont pas encore pris en charge. |
ContainerAppProbeTcpSocket |
terminationGracePeriodSeconds |
Durée facultative en secondes, le pod doit se terminer correctement lors de l’échec de la sonde. La période de grâce est la durée en secondes après que les processus en cours d’exécution dans le pod soient envoyés un signal d’arrêt et le moment où les processus sont arrêtés de force avec un signal de destruction. Définissez cette valeur plus longtemps que l’heure de nettoyage attendue pour votre processus. Si cette valeur est nulle, l’arrêt du podGracePeriodSeconds est utilisé. Dans le cas contraire, cette valeur remplace la valeur fournie par la spécification de pod. La valeur doit être un entier non négatif. La valeur zéro indique l’arrêt immédiatement via le signal de destruction (aucune occasion d’arrêter). Il s’agit d’un champ alpha et 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' 'Readiness' 'Startup' |
ContainerAppProbeHttpGet
Nom |
Description |
Valeur |
hôte |
Nom d’hôte à connecter, par défaut à l’adresse IP du pod. Vous souhaitez probablement définir « Host » dans httpHeaders à la place. |
corde |
httpHeaders |
En-têtes personnalisés à définir dans la requête. HTTP autorise les en-têtes répétés. |
ContainerAppProbeHttpGetHttpHeadersItem[] |
chemin |
Chemin d’accès au serveur HTTP. |
corde |
port |
Nom ou numéro du port à accéder au conteneur. Le nombre doit être compris entre 1 et 65535. Le nom doit être un IANA_SVC_NAME. |
int (obligatoire) |
schéma |
Schéma à utiliser pour la connexion à l’hôte. La valeur par défaut est HTTP. |
'HTTP' 'HTTPS' |
Nom |
Description |
Valeur |
nom |
Nom du champ d’en-tête |
chaîne (obligatoire) |
valeur |
Valeur du champ d’en-tête |
chaîne (obligatoire) |
ContainerAppProbeTcpSocket
Nom |
Description |
Valeur |
hôte |
Facultatif : nom d’hôte auquel se connecter, par défaut à l’adresse IP du pod. |
corde |
port |
Numéro ou nom du port à accéder au conteneur. Le nombre doit être compris entre 1 et 65535. Le nom doit être un IANA_SVC_NAME. |
int (obligatoire) |
ContainerAppProperties
Nom |
Description |
Valeur |
configuration |
Propriétés de configuration d’application conteneur non versionnée. |
Configuration |
managedEnvironmentId |
ID de ressource de l’environnement de l’application conteneur. |
corde |
modèle |
Définition de l’application avec version de l’application conteneur. |
Modèle |
ContainerResources
Nom |
Description |
Valeur |
CPU |
Processeur requis dans les cœurs, par exemple 0,5 |
Int |
mémoire |
Mémoire requise, par exemple « 250 Mo » |
corde |
CustomDomain
Nom |
Description |
Valeur |
bindingType |
Type de liaison de domaine personnalisé. |
'Désactivé' 'SniEnabled' |
certificateId |
ID de ressource du certificat à lier à ce nom d’hôte. |
corde |
nom |
Nom d’hôte. |
chaîne (obligatoire) |
CustomScaleRule
Nom |
Description |
Valeur |
Auth |
Secrets d’authentification pour la règle de mise à l’échelle personnalisée. |
ScaleRuleAuth[] |
métadonnées |
Propriétés de métadonnées pour décrire une règle d’échelle personnalisée. |
CustomScaleRuleMetadata |
type |
Type de la règle d’échelle personnalisée par exemple : azure-servicebus, redis, etc. |
corde |
Dapr
Nom |
Description |
Valeur |
appId |
Identificateur d’application Dapr |
corde |
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' |
Activé |
Boolean indiquant si la voiture latérale Dapr est activée |
Bool |
EnvironmentVar
Nom |
Description |
Valeur |
nom |
Nom de la variable d’environnement. |
corde |
secretRef |
Nom du secret de l’application conteneur à partir duquel extraire la valeur de la variable d’environnement. |
corde |
valeur |
Valeur de variable d’environnement non secrète. |
corde |
HttpScaleRule
Nom |
Description |
Valeur |
Auth |
Secrets d’authentification pour la règle de mise à l’échelle personnalisée. |
ScaleRuleAuth[] |
métadonnées |
Propriétés de métadonnées pour décrire la règle de mise à l’échelle http. |
HttpScaleRuleMetadata |
Entrée
Nom |
Description |
Valeur |
allowInsecure |
Bool indiquant si les connexions HTTP à sont autorisées. Si la valeur est false, les connexions HTTP sont automatiquement redirigées vers des connexions HTTPS |
Bool |
customDomains |
liaisons de domaine personnalisées pour les noms d’hôte container Apps. |
CustomDomain[] |
externe |
Bool indiquant si l’application expose un point de terminaison http externe |
Bool |
targetPort |
Port cible dans les conteneurs pour le trafic à partir d’entrée |
Int |
trafic |
Pondérations du trafic pour les révisions de l’application |
TrafficWeight[] |
transport |
Protocole de transport d’entrée |
'auto' 'http' 'http2' |
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 sous la forme : « /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Les valeurs de dictionnaire peuvent être des objets vides ({}) dans les requêtes. |
UserAssignedIdentities |
Microsoft.App/containerApps
Nom |
Description |
Valeur |
identité |
identités managées pour l’application conteneur afin d’interagir avec d’autres services Azure sans conserver de secrets ou d’informations d’identification dans le code. |
ManagedServiceIdentity |
emplacement |
Emplacement géographique où réside la ressource |
chaîne (obligatoire) |
nom |
Nom de la ressource |
chaîne (obligatoire) |
Propriétés |
Propriétés spécifiques à la ressource ContainerApp |
containerAppProperties |
étiquettes |
Balises de ressource |
Dictionnaire de noms et de valeurs d’étiquettes. Consultez les balises dans les modèles |
QueueScaleRule
Nom |
Description |
Valeur |
Auth |
Secrets d’authentification pour la règle d’échelle de file d’attente. |
ScaleRuleAuth[] |
queueLength |
Longueur de file d’attente. |
Int |
queueName |
Nom de la file d’attente. |
corde |
RegistryCredentials
Nom |
Description |
Valeur |
passwordSecretRef |
Nom du secret qui contient le mot de passe de connexion au Registre |
corde |
serveur |
Container Registry Server |
corde |
nom d’utilisateur |
Nom d’utilisateur du registre de conteneurs |
corde |
Écaille
Nom |
Description |
Valeur |
maxReplicas |
Optionnel. Nombre maximal de réplicas de conteneur. La valeur par défaut est 10 si elle n’est pas définie. |
Int |
minReplicas |
Optionnel. Nombre minimal de réplicas de conteneur. |
Int |
règlement |
Règles de mise à l’échelle. |
ScaleRule[] |
ScaleRule
Nom |
Description |
Valeur |
azureQueue |
Mise à l’échelle basée sur la file d’attente Azure. |
QueueScaleRule |
coutume |
Règle d’échelle personnalisée. |
CustomScaleRule |
http |
Mise à l’échelle basée sur les requêtes HTTP. |
HttpScaleRule |
nom |
Nom de la règle de mise à l’échelle |
corde |
ScaleRuleAuth
Nom |
Description |
Valeur |
secretRef |
Nom du secret de l’application conteneur à partir duquel extraire les params d’authentification. |
corde |
triggerParameter |
Paramètre de déclencheur qui utilise le secret |
corde |
Secret
Nom |
Description |
Valeur |
nom |
Nom du secret. |
corde |
valeur |
Valeur secrète. |
corde
Contraintes: Valeur sensible. Passez en tant que paramètre sécurisé. |
Modèle
Nom |
Description |
Valeur |
Conteneurs |
Liste des définitions de conteneur pour l’application conteneur. |
conteneur[] |
revisionSuffix |
Suffixe convivial ajouté au nom de révision |
corde |
écaille |
Propriétés de mise à l’échelle de l’application conteneur. |
Échelle |
Volumes |
Liste des définitions de volume pour l’application conteneur. |
de volume [] |
TrafficWeight
Nom |
Description |
Valeur |
latestRevision |
Indique que le poids du trafic appartient à une dernière révision stable |
Bool |
revisionName |
Nom d’une révision |
corde |
poids |
Poids du trafic affecté à une révision |
Int |
UserAssignedIdentities
UserAssignedIdentity
Volume
Nom |
Description |
Valeur |
nom |
Nom du volume. |
corde |
storageName |
Nom de la ressource de stockage. Il n’est pas nécessaire de fournir EmptyDir. |
corde |
storageType |
Type de stockage pour le volume. Si ce n’est pas le cas, utilisez EmptyDir. |
'AzureFile' 'EmptyDir' |
VolumeMount
Nom |
Description |
Valeur |
mountPath |
Chemin d’accès au sein du conteneur auquel le volume doit être monté. Ne doit pas contenir ' :'. |
corde |
volumeName |
Cela doit correspondre au nom d’un volume. |
corde |
Exemples de démarrage rapide
Les exemples de démarrage rapide suivants déploient ce type de ressource.
Définition de ressource 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 de l’API, consultez journal des modifications.
Pour créer une ressource Microsoft.App/containerApps, ajoutez le code JSON suivant à votre modèle.
{
"type": "Microsoft.App/containerApps",
"apiVersion": "2022-01-01-preview",
"name": "string",
"identity": {
"type": "string",
"userAssignedIdentities": {
"{customized property}": {
}
}
},
"location": "string",
"properties": {
"configuration": {
"activeRevisionsMode": "string",
"dapr": {
"appId": "string",
"appPort": "int",
"appProtocol": "string",
"enabled": "bool"
},
"ingress": {
"allowInsecure": "bool",
"customDomains": [
{
"bindingType": "string",
"certificateId": "string",
"name": "string"
}
],
"external": "bool",
"targetPort": "int",
"traffic": [
{
"latestRevision": "bool",
"revisionName": "string",
"weight": "int"
}
],
"transport": "string"
},
"registries": [
{
"passwordSecretRef": "string",
"server": "string",
"username": "string"
}
],
"secrets": [
{
"name": "string",
"value": "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": "int",
"memory": "string"
},
"volumeMounts": [
{
"mountPath": "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"
}
]
},
"volumes": [
{
"name": "string",
"storageName": "string",
"storageType": "string"
}
]
}
},
"tags": {
"{customized property}": "string"
}
}
Valeurs de propriété
Configuration
Nom |
Description |
Valeur |
activeRevisionsMode |
ActiveRevisionsMode contrôle la façon dont les révisions actives sont gérées pour l’application conteneur :
<liste><élément>Multiple : plusieurs révisions peuvent être actives. Si aucune valeur n’est fournie, il s’agit de la valeur par défaut</item><élément>Single : une seule révision peut être active à la fois. Les pondérations de révision ne peuvent pas être utilisées dans ce mode</item></list> |
'Multiple' 'Single' |
dapr |
Configuration dapr pour l’application conteneur. |
Dapr |
entrée |
Configurations d’entrée. |
Entrée |
Registres |
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[] |
Conteneur
Nom |
Description |
Valeur |
args |
Arguments de commande de démarrage du conteneur. |
string[] |
commander |
Commande de démarrage du conteneur. |
string[] |
Env |
Variables d’environnement de conteneur. |
EnvironmentVar[] |
image |
Balise d’image conteneur. |
corde |
nom |
Nom du conteneur personnalisé. |
corde |
Sondes |
Liste des sondes pour le conteneur. |
containerAppProbe[] |
ressources |
Exigences en matière de ressources de conteneur. |
ContainerResources |
volumeMounts |
Montages de volumes de conteneurs. |
VolumeMount[] |
ContainerAppProbe
Nom |
Description |
Valeur |
failureThreshold |
Échecs consécutifs minimum 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 l’initialisation des sondes liveness. La valeur minimale est 1. La valeur maximale est 60. |
Int |
periodSeconds |
Fréquence (en secondes) d’exécution de la sonde. La valeur par défaut est de 10 secondes. La valeur minimale est 1. La valeur maximale est 240. |
Int |
successThreshold |
Nombre minimal de réussites consécutives pour que la sonde soit considérée comme réussie après avoir échoué. La valeur par défaut est 1. Doit être 1 pour la vie 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 hooks TCP ne sont pas encore pris en charge. |
ContainerAppProbeTcpSocket |
terminationGracePeriodSeconds |
Durée facultative en secondes, le pod doit se terminer correctement lors de l’échec de la sonde. La période de grâce est la durée en secondes après que les processus en cours d’exécution dans le pod soient envoyés un signal d’arrêt et le moment où les processus sont arrêtés de force avec un signal de destruction. Définissez cette valeur plus longtemps que l’heure de nettoyage attendue pour votre processus. Si cette valeur est nulle, l’arrêt du podGracePeriodSeconds est utilisé. Dans le cas contraire, cette valeur remplace la valeur fournie par la spécification de pod. La valeur doit être un entier non négatif. La valeur zéro indique l’arrêt immédiatement via le signal de destruction (aucune occasion d’arrêter). Il s’agit d’un champ alpha et 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' 'Readiness' 'Startup' |
ContainerAppProbeHttpGet
Nom |
Description |
Valeur |
hôte |
Nom d’hôte à connecter, par défaut à l’adresse IP du pod. Vous souhaitez probablement définir « Host » dans httpHeaders à la place. |
corde |
httpHeaders |
En-têtes personnalisés à définir dans la requête. HTTP autorise les en-têtes répétés. |
ContainerAppProbeHttpGetHttpHeadersItem[] |
chemin |
Chemin d’accès au serveur HTTP. |
corde |
port |
Nom ou numéro du port à accéder au conteneur. Le nombre doit être compris entre 1 et 65535. Le nom doit être un IANA_SVC_NAME. |
int (obligatoire) |
schéma |
Schéma à utiliser pour la connexion à l’hôte. La valeur par défaut est HTTP. |
'HTTP' 'HTTPS' |
Nom |
Description |
Valeur |
nom |
Nom du champ d’en-tête |
chaîne (obligatoire) |
valeur |
Valeur du champ d’en-tête |
chaîne (obligatoire) |
ContainerAppProbeTcpSocket
Nom |
Description |
Valeur |
hôte |
Facultatif : nom d’hôte auquel se connecter, par défaut à l’adresse IP du pod. |
corde |
port |
Numéro ou nom du port à accéder au conteneur. Le nombre doit être compris entre 1 et 65535. Le nom doit être un IANA_SVC_NAME. |
int (obligatoire) |
ContainerAppProperties
Nom |
Description |
Valeur |
configuration |
Propriétés de configuration d’application conteneur non versionnée. |
Configuration |
managedEnvironmentId |
ID de ressource de l’environnement de l’application conteneur. |
corde |
modèle |
Définition de l’application avec version de l’application conteneur. |
Modèle |
ContainerResources
Nom |
Description |
Valeur |
CPU |
Processeur requis dans les cœurs, par exemple 0,5 |
Int |
mémoire |
Mémoire requise, par exemple « 250 Mo » |
corde |
CustomDomain
Nom |
Description |
Valeur |
bindingType |
Type de liaison de domaine personnalisé. |
'Désactivé' 'SniEnabled' |
certificateId |
ID de ressource du certificat à lier à ce nom d’hôte. |
corde |
nom |
Nom d’hôte. |
chaîne (obligatoire) |
CustomScaleRule
Nom |
Description |
Valeur |
Auth |
Secrets d’authentification pour la règle de mise à l’échelle personnalisée. |
ScaleRuleAuth[] |
métadonnées |
Propriétés de métadonnées pour décrire une règle d’échelle personnalisée. |
CustomScaleRuleMetadata |
type |
Type de la règle d’échelle personnalisée par exemple : azure-servicebus, redis, etc. |
corde |
Dapr
Nom |
Description |
Valeur |
appId |
Identificateur d’application Dapr |
corde |
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' |
Activé |
Boolean indiquant si la voiture latérale Dapr est activée |
Bool |
EnvironmentVar
Nom |
Description |
Valeur |
nom |
Nom de la variable d’environnement. |
corde |
secretRef |
Nom du secret de l’application conteneur à partir duquel extraire la valeur de la variable d’environnement. |
corde |
valeur |
Valeur de variable d’environnement non secrète. |
corde |
HttpScaleRule
Nom |
Description |
Valeur |
Auth |
Secrets d’authentification pour la règle de mise à l’échelle personnalisée. |
ScaleRuleAuth[] |
métadonnées |
Propriétés de métadonnées pour décrire la règle de mise à l’échelle http. |
HttpScaleRuleMetadata |
Entrée
Nom |
Description |
Valeur |
allowInsecure |
Bool indiquant si les connexions HTTP à sont autorisées. Si la valeur est false, les connexions HTTP sont automatiquement redirigées vers des connexions HTTPS |
Bool |
customDomains |
liaisons de domaine personnalisées pour les noms d’hôte container Apps. |
CustomDomain[] |
externe |
Bool indiquant si l’application expose un point de terminaison http externe |
Bool |
targetPort |
Port cible dans les conteneurs pour le trafic à partir d’entrée |
Int |
trafic |
Pondérations du trafic pour les révisions de l’application |
TrafficWeight[] |
transport |
Protocole de transport d’entrée |
'auto' 'http' 'http2' |
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 sous la forme : « /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Les valeurs de dictionnaire peuvent être des objets vides ({}) dans les requêtes. |
UserAssignedIdentities |
Microsoft.App/containerApps
Nom |
Description |
Valeur |
apiVersion |
Version de l’API |
'2022-01-01-preview' |
identité |
identités managées pour l’application conteneur afin d’interagir avec d’autres services Azure sans conserver de secrets ou d’informations d’identification dans le code. |
ManagedServiceIdentity |
emplacement |
Emplacement géographique où réside la ressource |
chaîne (obligatoire) |
nom |
Nom de la ressource |
chaîne (obligatoire) |
Propriétés |
Propriétés spécifiques à la ressource ContainerApp |
containerAppProperties |
étiquettes |
Balises de ressource |
Dictionnaire de noms et de valeurs d’étiquettes. Consultez les balises dans les modèles |
type |
Type de ressource |
'Microsoft.App/containerApps' |
QueueScaleRule
Nom |
Description |
Valeur |
Auth |
Secrets d’authentification pour la règle d’échelle de file d’attente. |
ScaleRuleAuth[] |
queueLength |
Longueur de file d’attente. |
Int |
queueName |
Nom de la file d’attente. |
corde |
RegistryCredentials
Nom |
Description |
Valeur |
passwordSecretRef |
Nom du secret qui contient le mot de passe de connexion au Registre |
corde |
serveur |
Container Registry Server |
corde |
nom d’utilisateur |
Nom d’utilisateur du registre de conteneurs |
corde |
Écaille
Nom |
Description |
Valeur |
maxReplicas |
Optionnel. Nombre maximal de réplicas de conteneur. La valeur par défaut est 10 si elle n’est pas définie. |
Int |
minReplicas |
Optionnel. Nombre minimal de réplicas de conteneur. |
Int |
règlement |
Règles de mise à l’échelle. |
ScaleRule[] |
ScaleRule
Nom |
Description |
Valeur |
azureQueue |
Mise à l’échelle basée sur la file d’attente Azure. |
QueueScaleRule |
coutume |
Règle d’échelle personnalisée. |
CustomScaleRule |
http |
Mise à l’échelle basée sur les requêtes HTTP. |
HttpScaleRule |
nom |
Nom de la règle de mise à l’échelle |
corde |
ScaleRuleAuth
Nom |
Description |
Valeur |
secretRef |
Nom du secret de l’application conteneur à partir duquel extraire les params d’authentification. |
corde |
triggerParameter |
Paramètre de déclencheur qui utilise le secret |
corde |
Secret
Nom |
Description |
Valeur |
nom |
Nom du secret. |
corde |
valeur |
Valeur secrète. |
corde
Contraintes: Valeur sensible. Passez en tant que paramètre sécurisé. |
Modèle
Nom |
Description |
Valeur |
Conteneurs |
Liste des définitions de conteneur pour l’application conteneur. |
conteneur[] |
revisionSuffix |
Suffixe convivial ajouté au nom de révision |
corde |
écaille |
Propriétés de mise à l’échelle de l’application conteneur. |
Échelle |
Volumes |
Liste des définitions de volume pour l’application conteneur. |
de volume [] |
TrafficWeight
Nom |
Description |
Valeur |
latestRevision |
Indique que le poids du trafic appartient à une dernière révision stable |
Bool |
revisionName |
Nom d’une révision |
corde |
poids |
Poids du trafic affecté à une révision |
Int |
UserAssignedIdentities
UserAssignedIdentity
Volume
Nom |
Description |
Valeur |
nom |
Nom du volume. |
corde |
storageName |
Nom de la ressource de stockage. Il n’est pas nécessaire de fournir EmptyDir. |
corde |
storageType |
Type de stockage pour le volume. Si ce n’est pas le cas, utilisez EmptyDir. |
'AzureFile' 'EmptyDir' |
VolumeMount
Nom |
Description |
Valeur |
mountPath |
Chemin d’accès au sein du conteneur auquel le volume doit être monté. Ne doit pas contenir ' :'. |
corde |
volumeName |
Cela doit correspondre au nom d’un volume. |
corde |
Modèles de démarrage rapide
Les modèles de démarrage rapide suivants déploient ce type de ressource.
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 de l’API, consultez journal des modifications.
Pour créer une ressource Microsoft.App/containerApps, ajoutez la terraform suivante à votre modèle.
resource "azapi_resource" "symbolicname" {
type = "Microsoft.App/containerApps@2022-01-01-preview"
name = "string"
identity = {
type = "string"
userAssignedIdentities = {
{customized property} = {
}
}
}
location = "string"
tags = {
{customized property} = "string"
}
body = jsonencode({
properties = {
configuration = {
activeRevisionsMode = "string"
dapr = {
appId = "string"
appPort = int
appProtocol = "string"
enabled = bool
}
ingress = {
allowInsecure = bool
customDomains = [
{
bindingType = "string"
certificateId = "string"
name = "string"
}
]
external = bool
targetPort = int
traffic = [
{
latestRevision = bool
revisionName = "string"
weight = int
}
]
transport = "string"
}
registries = [
{
passwordSecretRef = "string"
server = "string"
username = "string"
}
]
secrets = [
{
name = "string"
value = "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 = int
memory = "string"
}
volumeMounts = [
{
mountPath = "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"
}
]
}
volumes = [
{
name = "string"
storageName = "string"
storageType = "string"
}
]
}
}
})
}
Valeurs de propriété
Configuration
Nom |
Description |
Valeur |
activeRevisionsMode |
ActiveRevisionsMode contrôle la façon dont les révisions actives sont gérées pour l’application conteneur :
<liste><élément>Multiple : plusieurs révisions peuvent être actives. Si aucune valeur n’est fournie, il s’agit de la valeur par défaut</item><élément>Single : une seule révision peut être active à la fois. Les pondérations de révision ne peuvent pas être utilisées dans ce mode</item></list> |
'Multiple' 'Single' |
dapr |
Configuration dapr pour l’application conteneur. |
Dapr |
entrée |
Configurations d’entrée. |
Entrée |
Registres |
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[] |
Conteneur
Nom |
Description |
Valeur |
args |
Arguments de commande de démarrage du conteneur. |
string[] |
commander |
Commande de démarrage du conteneur. |
string[] |
Env |
Variables d’environnement de conteneur. |
EnvironmentVar[] |
image |
Balise d’image conteneur. |
corde |
nom |
Nom du conteneur personnalisé. |
corde |
Sondes |
Liste des sondes pour le conteneur. |
containerAppProbe[] |
ressources |
Exigences en matière de ressources de conteneur. |
ContainerResources |
volumeMounts |
Montages de volumes de conteneurs. |
VolumeMount[] |
ContainerAppProbe
Nom |
Description |
Valeur |
failureThreshold |
Échecs consécutifs minimum 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 l’initialisation des sondes liveness. La valeur minimale est 1. La valeur maximale est 60. |
Int |
periodSeconds |
Fréquence (en secondes) d’exécution de la sonde. La valeur par défaut est de 10 secondes. La valeur minimale est 1. La valeur maximale est 240. |
Int |
successThreshold |
Nombre minimal de réussites consécutives pour que la sonde soit considérée comme réussie après avoir échoué. La valeur par défaut est 1. Doit être 1 pour la vie 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 hooks TCP ne sont pas encore pris en charge. |
ContainerAppProbeTcpSocket |
terminationGracePeriodSeconds |
Durée facultative en secondes, le pod doit se terminer correctement lors de l’échec de la sonde. La période de grâce est la durée en secondes après que les processus en cours d’exécution dans le pod soient envoyés un signal d’arrêt et le moment où les processus sont arrêtés de force avec un signal de destruction. Définissez cette valeur plus longtemps que l’heure de nettoyage attendue pour votre processus. Si cette valeur est nulle, l’arrêt du podGracePeriodSeconds est utilisé. Dans le cas contraire, cette valeur remplace la valeur fournie par la spécification de pod. La valeur doit être un entier non négatif. La valeur zéro indique l’arrêt immédiatement via le signal de destruction (aucune occasion d’arrêter). Il s’agit d’un champ alpha et 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' 'Readiness' 'Startup' |
ContainerAppProbeHttpGet
Nom |
Description |
Valeur |
hôte |
Nom d’hôte à connecter, par défaut à l’adresse IP du pod. Vous souhaitez probablement définir « Host » dans httpHeaders à la place. |
corde |
httpHeaders |
En-têtes personnalisés à définir dans la requête. HTTP autorise les en-têtes répétés. |
ContainerAppProbeHttpGetHttpHeadersItem[] |
chemin |
Chemin d’accès au serveur HTTP. |
corde |
port |
Nom ou numéro du port à accéder au conteneur. Le nombre doit être compris entre 1 et 65535. Le nom doit être un IANA_SVC_NAME. |
int (obligatoire) |
schéma |
Schéma à utiliser pour la connexion à l’hôte. La valeur par défaut est HTTP. |
'HTTP' 'HTTPS' |
Nom |
Description |
Valeur |
nom |
Nom du champ d’en-tête |
chaîne (obligatoire) |
valeur |
Valeur du champ d’en-tête |
chaîne (obligatoire) |
ContainerAppProbeTcpSocket
Nom |
Description |
Valeur |
hôte |
Facultatif : nom d’hôte auquel se connecter, par défaut à l’adresse IP du pod. |
corde |
port |
Numéro ou nom du port à accéder au conteneur. Le nombre doit être compris entre 1 et 65535. Le nom doit être un IANA_SVC_NAME. |
int (obligatoire) |
ContainerAppProperties
Nom |
Description |
Valeur |
configuration |
Propriétés de configuration d’application conteneur non versionnée. |
Configuration |
managedEnvironmentId |
ID de ressource de l’environnement de l’application conteneur. |
corde |
modèle |
Définition de l’application avec version de l’application conteneur. |
Modèle |
ContainerResources
Nom |
Description |
Valeur |
CPU |
Processeur requis dans les cœurs, par exemple 0,5 |
Int |
mémoire |
Mémoire requise, par exemple « 250 Mo » |
corde |
CustomDomain
Nom |
Description |
Valeur |
bindingType |
Type de liaison de domaine personnalisé. |
'Désactivé' 'SniEnabled' |
certificateId |
ID de ressource du certificat à lier à ce nom d’hôte. |
corde |
nom |
Nom d’hôte. |
chaîne (obligatoire) |
CustomScaleRule
Nom |
Description |
Valeur |
Auth |
Secrets d’authentification pour la règle de mise à l’échelle personnalisée. |
ScaleRuleAuth[] |
métadonnées |
Propriétés de métadonnées pour décrire une règle d’échelle personnalisée. |
CustomScaleRuleMetadata |
type |
Type de la règle d’échelle personnalisée par exemple : azure-servicebus, redis, etc. |
corde |
Dapr
Nom |
Description |
Valeur |
appId |
Identificateur d’application Dapr |
corde |
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' |
Activé |
Boolean indiquant si la voiture latérale Dapr est activée |
Bool |
EnvironmentVar
Nom |
Description |
Valeur |
nom |
Nom de la variable d’environnement. |
corde |
secretRef |
Nom du secret de l’application conteneur à partir duquel extraire la valeur de la variable d’environnement. |
corde |
valeur |
Valeur de variable d’environnement non secrète. |
corde |
HttpScaleRule
Nom |
Description |
Valeur |
Auth |
Secrets d’authentification pour la règle de mise à l’échelle personnalisée. |
ScaleRuleAuth[] |
métadonnées |
Propriétés de métadonnées pour décrire la règle de mise à l’échelle http. |
HttpScaleRuleMetadata |
Entrée
Nom |
Description |
Valeur |
allowInsecure |
Bool indiquant si les connexions HTTP à sont autorisées. Si la valeur est false, les connexions HTTP sont automatiquement redirigées vers des connexions HTTPS |
Bool |
customDomains |
liaisons de domaine personnalisées pour les noms d’hôte container Apps. |
CustomDomain[] |
externe |
Bool indiquant si l’application expose un point de terminaison http externe |
Bool |
targetPort |
Port cible dans les conteneurs pour le trafic à partir d’entrée |
Int |
trafic |
Pondérations du trafic pour les révisions de l’application |
TrafficWeight[] |
transport |
Protocole de transport d’entrée |
'auto' 'http' 'http2' |
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 sous la forme : « /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Les valeurs de dictionnaire peuvent être des objets vides ({}) dans les requêtes. |
UserAssignedIdentities |
Microsoft.App/containerApps
Nom |
Description |
Valeur |
identité |
identités managées pour l’application conteneur afin d’interagir avec d’autres services Azure sans conserver de secrets ou d’informations d’identification dans le code. |
ManagedServiceIdentity |
emplacement |
Emplacement géographique où réside la ressource |
chaîne (obligatoire) |
nom |
Nom de la ressource |
chaîne (obligatoire) |
Propriétés |
Propriétés spécifiques à la ressource ContainerApp |
containerAppProperties |
étiquettes |
Balises de ressource |
Dictionnaire de noms et de valeurs d’étiquettes. |
type |
Type de ressource |
« Microsoft.App/containerApps@2022-01-01-preview » |
QueueScaleRule
Nom |
Description |
Valeur |
Auth |
Secrets d’authentification pour la règle d’échelle de file d’attente. |
ScaleRuleAuth[] |
queueLength |
Longueur de file d’attente. |
Int |
queueName |
Nom de la file d’attente. |
corde |
RegistryCredentials
Nom |
Description |
Valeur |
passwordSecretRef |
Nom du secret qui contient le mot de passe de connexion au Registre |
corde |
serveur |
Container Registry Server |
corde |
nom d’utilisateur |
Nom d’utilisateur du registre de conteneurs |
corde |
Écaille
Nom |
Description |
Valeur |
maxReplicas |
Optionnel. Nombre maximal de réplicas de conteneur. La valeur par défaut est 10 si elle n’est pas définie. |
Int |
minReplicas |
Optionnel. Nombre minimal de réplicas de conteneur. |
Int |
règlement |
Règles de mise à l’échelle. |
ScaleRule[] |
ScaleRule
Nom |
Description |
Valeur |
azureQueue |
Mise à l’échelle basée sur la file d’attente Azure. |
QueueScaleRule |
coutume |
Règle d’échelle personnalisée. |
CustomScaleRule |
http |
Mise à l’échelle basée sur les requêtes HTTP. |
HttpScaleRule |
nom |
Nom de la règle de mise à l’échelle |
corde |
ScaleRuleAuth
Nom |
Description |
Valeur |
secretRef |
Nom du secret de l’application conteneur à partir duquel extraire les params d’authentification. |
corde |
triggerParameter |
Paramètre de déclencheur qui utilise le secret |
corde |
Secret
Nom |
Description |
Valeur |
nom |
Nom du secret. |
corde |
valeur |
Valeur secrète. |
corde
Contraintes: Valeur sensible. Passez en tant que paramètre sécurisé. |
Modèle
Nom |
Description |
Valeur |
Conteneurs |
Liste des définitions de conteneur pour l’application conteneur. |
conteneur[] |
revisionSuffix |
Suffixe convivial ajouté au nom de révision |
corde |
écaille |
Propriétés de mise à l’échelle de l’application conteneur. |
Échelle |
Volumes |
Liste des définitions de volume pour l’application conteneur. |
de volume [] |
TrafficWeight
Nom |
Description |
Valeur |
latestRevision |
Indique que le poids du trafic appartient à une dernière révision stable |
Bool |
revisionName |
Nom d’une révision |
corde |
poids |
Poids du trafic affecté à une révision |
Int |
UserAssignedIdentities
UserAssignedIdentity
Volume
Nom |
Description |
Valeur |
nom |
Nom du volume. |
corde |
storageName |
Nom de la ressource de stockage. Il n’est pas nécessaire de fournir EmptyDir. |
corde |
storageType |
Type de stockage pour le volume. Si ce n’est pas le cas, utilisez EmptyDir. |
'AzureFile' 'EmptyDir' |
VolumeMount
Nom |
Description |
Valeur |
mountPath |
Chemin d’accès au sein du conteneur auquel le volume doit être monté. Ne doit pas contenir ' :'. |
corde |
volumeName |
Cela doit correspondre au nom d’un volume. |
corde |