Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Référence du schéma du manifeste de déploiement
Le manifeste de déploiement est un fichier JSON qui définit la manière dont Elastic Beanstalk doit déployer et configurer vos applications Windows. Cette section fournit une référence complète pour toutes les propriétés et options de configuration prises en charge dans le schéma du manifeste.
Structure du manifeste
Le manifeste de déploiement suit un schéma JSON spécifique avec la structure de haut niveau suivante :
Exemple Structure de base du manifeste
{
"manifestVersion": 1,
"skipIISReset": false,
"iisConfig": {
"appPools": [...]
},
"deployments": {
"msDeploy": [...],
"aspNetCoreWeb": [...],
"custom": [...]
}
}
Propriétés de haut niveau
manifestVersion
(obligatoire)-
Type : nombre
Par défaut : 1
Valeurs valides : 1
Spécifie la version du schéma du manifeste. Actuellement, seule la version 1 est prise en charge.
skipIISReset
(facultatif)-
Type : valeur booléenne
Par défaut : faux
Contrôle si IIS est réinitialisé lors des déploiements d'applications. Cet indicateur affecte à la fois les types de
aspNetCoreWeb
déploiementmsDeploy
et les types de déploiement.Comportement :
-
Non spécifié ou
false
(par défaut) : les réinitialisations IIS sont effectuées lors des opérations d'installation, de désinstallation et de mise à jour. C'est le comportement traditionnel. -
true
: les réinitialisations IIS sont ignorées lors des opérations de déploiement.
Avantages :
-
Réduction des temps d'arrêt : les applications subissent des interruptions de service plus courtes pendant les déploiements.
-
Déploiements plus rapides : élimine le temps nécessaire au redémarrage et à la réinitialisation complets d'IIS.
Note
Lors de l'utilisation
skipIISReset
, l'RestartAppServeropération effectue une réinitialisation IIS quel que soit ce paramètre d'indicateur.Exemple :
{ "manifestVersion": 1, "skipIISReset": true, "deployments": { "aspNetCoreWeb": [ { "name": "my-dotnet-core-app", "parameters": { "archive": "dotnet-core-app.zip", "iisPath": "/" } } ] } }
-
deployments
(obligatoire)-
Type : Objet
Contient les configurations de déploiement pour vos applications. Cet objet peut inclure
msDeploy
aspNetCoreWeb
, et des types decustom
déploiement. iisConfig
(facultatif)-
Type : Objet
Définit les paramètres de configuration IIS à appliquer avant de déployer des applications. Prend actuellement en charge la configuration du pool d'applications.
Configuration d'IIS
Cette iisConfig
section vous permet de configurer les paramètres IIS avant de déployer vos applications. Cela est particulièrement utile pour configurer des pools d'applications avec des configurations spécifiques.
Pools d'applications
Les pools d'applications isolent les applications et vous permettent de configurer les paramètres d'exécution pour des groupes d'applications.
Exemple Configuration du pool d'applications
{
"iisConfig": {
"appPools": [
{
"name": "MyAppPool",
"enable32Bit": false,
"managedPipelineMode": "Integrated",
"managedRuntimeVersion": "v4.0",
"queueLength": 1000,
"cpu": {
"limitPercentage": 80,
"limitAction": "Throttle",
"limitMonitoringInterval": 5
},
"recycling": {
"regularTimeInterval": 1440,
"requestLimit": 10000,
"memory": 1048576,
"privateMemory": 524288
}
}
]
}
}
Propriétés du pool d'applications
name
(obligatoire)-
Type : chaîne
Nom du pool d'applications. Ce nom est utilisé pour faire référence au pool dans les configurations de déploiement.
enable32Bit
(facultatif)-
Type : valeur booléenne
Permet à une application 32 bits de s'exécuter sur une version 64 bits de Windows. Définissez cette option
true
pour les applications existantes qui nécessitent une compatibilité 32 bits. managedPipelineMode
(facultatif)-
Type : chaîne
Valeurs valides : « Intégré », « Classique »
Spécifie le mode de traitement des demandes pour le pool d'applications.
managedRuntimeVersion
(facultatif)-
Type : chaîne
Valeurs valides : « Aucun code géré », « v2.0 », « v4.0 »
Spécifie la version du .NET Framework pour le pool d'applications.
queueLength
(facultatif)-
Type : entier
Nombre maximal de demandes que HTTP.sys met en file d'attente pour le pool d'applications avant de rejeter les demandes supplémentaires.
Configuration du processeur
L'cpu
objet configure les limites d'utilisation du processeur et la surveillance du pool d'applications.
limitPercentage
(facultatif)-
Type : nombre
Pourcentage maximal de temps processeur que les processus de travail peuvent consommer dans le pool d'applications.
limitAction
(facultatif)-
Type : chaîne
Valeurs valides : "NoAction«, « KillW3WP », « Throttle », "» ThrottleUnderLoad
Action à entreprendre lorsque la limite du processeur est atteinte.
limitMonitoringInterval
(facultatif)-
Type : nombre
Période de réinitialisation (en minutes) pour la surveillance du processeur et les limites de régulation.
Configuration du recyclage
L'recycling
objet configure quand et comment les processus de travail du pool d'applications sont recyclés.
regularTimeInterval
(facultatif)-
Type : entier
Intervalle de temps (en minutes) après lequel le pool d'applications recycle. Réglez sur 0 pour désactiver le recyclage basé sur le temps.
requestLimit
(facultatif)-
Type : entier
Nombre maximal de demandes traitées par le pool d'applications avant le recyclage.
memory
(facultatif)-
Type : entier
Quantité de mémoire virtuelle (en kilo-octets) qui déclenche le recyclage des processus de travail.
privateMemory
(facultatif)-
Type : entier
Quantité de mémoire privée (en kilo-octets) qui déclenche le recyclage des processus de travail.
Types de déploiement
L'deployments
objet contient des tableaux de configurations de déploiement pour différents types d'applications. Chaque type de déploiement possède des propriétés et des cas d'utilisation spécifiques.
MSDeploy déploiements
MSDeploy les déploiements sont utilisés pour les applications .NET Framework traditionnelles qui peuvent être déployées à l'aide de Web Deploy (MSDeploy).
Exemple MSDeploy configuration de déploiement
{
"deployments": {
"msDeploy": [
{
"name": "WebApp",
"description": "Main web application",
"parameters": {
"appBundle": "webapp.zip",
"iisPath": "/",
"appPool": "DefaultAppPool"
}
}
]
}
}
MSDeploy propriétés de déploiement
name
(obligatoire)-
Type : chaîne
Nom unique pour le déploiement. Ce nom doit être unique pour tous les déploiements du manifeste.
description
(facultatif)-
Type : chaîne
Description lisible par l'homme du déploiement.
parameters
(obligatoire)-
Type : Objet
Paramètres de configuration de l' MSDeploy opération.
scripts
(facultatif)-
Type : Objet
PowerShell scripts à exécuter à différentes étapes du cycle de vie du déploiement.
MSDeploy paramètres
appBundle
(obligatoire)-
Type : chaîne
Chemin d'accès au bundle d'applications (fichier ZIP) relatif au fichier manifeste. Ce bundle contient les fichiers d'application à déployer.
iisPath
(facultatif)-
Type : chaîne
Par défaut : «/»
Chemin du répertoire virtuel dans IIS où l'application sera déployée. Utilisez «/» pour le chemin racine ou « /api » pour un sous-répertoire.
appPool
(facultatif)-
Type : chaîne
Nom du pool d'applications pour exécuter cette application.
Déploiements ASP.NET Core
Les déploiements ASP.NET Core sont spécialement conçus pour les applications .NET Core et .NET 5+.
Exemple Configuration du déploiement d'ASP.NET Core
{
"deployments": {
"aspNetCoreWeb": [
{
"name": "CoreAPI",
"description": "ASP.NET Core Web API",
"parameters": {
"appBundle": "coreapi.zip",
"iisPath": "/api",
"appPool": "CoreAppPool"
}
}
]
}
}
Les déploiements ASP.NET Core utilisent la même structure de propriétés que MSDeploy les déploiements, la principale différence étant l'environnement d'exécution et le modèle d'hébergement utilisés pour l'application.
Paramètres de déploiement d'ASP.NET Core
appBundle
(obligatoire)-
Type : chaîne
Chemin d'accès au bundle d'applications relatif au fichier manifeste. Il peut s'agir d'une archive ZIP ou d'un chemin de répertoire contenant l'application ASP.NET Core publiée.
iisPath
(facultatif)-
Type : chaîne
Par défaut : «/»
Chemin du répertoire virtuel dans IIS pour l'application ASP.NET Core.
appPool
(facultatif)-
Type : chaîne
Pool d'applications pour l'application ASP.NET Core. Le pool sera configuré de manière appropriée pour l'hébergement ASP.NET Core.
Déploiements personnalisés
Les déploiements personnalisés permettent de contrôler totalement le processus de déploiement par le biais de PowerShell scripts. Ce type de déploiement est utile pour les scénarios complexes qui nécessitent une installation, une configuration ou une logique de déploiement personnalisées.
Exemple Configuration de déploiement personnalisée
{
"deployments": {
"custom": [
{
"name": "CustomService",
"description": "Custom Windows service deployment",
"architecture": 32,
"scripts": {
"install": {
"file": "install-service.ps1"
},
"restart": {
"file": "restart-service.ps1"
},
"uninstall": {
"file": "uninstall-service.ps1",
"ignoreErrors": true
}
}
}
]
}
}
Propriétés de déploiement personnalisées
name
(obligatoire)-
Type : chaîne
Nom unique pour le déploiement personnalisé.
description
(facultatif)-
Type : chaîne
Description du déploiement personnalisé.
architecture
(facultatif)-
Type : entier
Par défaut : 32
Valeurs valides : 32, 64
La spécification d'architecture pour le mode d'exécution des scripts PowerShell
scripts
(obligatoire)-
Type : Objet
PowerShell des scripts qui définissent le comportement de déploiement. Les déploiements personnalisés prennent en charge des types de scripts supplémentaires par rapport aux autres types de déploiement.
Scripts de déploiement
Les scripts de déploiement sont PowerShell des scripts qui s'exécutent à des moments spécifiques du cycle de vie du déploiement. Les différents types de déploiement prennent en charge différents ensembles d'événements de script.
Événements de script
Les événements de script suivants sont disponibles en fonction du type de déploiement :
Scripts de déploiement standard (MSDeploy et aspNetCore Web)
preInstall
-
S'exécute avant l'installation ou la mise à jour de l'application.
postInstall
-
S'exécute après l'installation ou la mise à jour de l'application.
preRestart
-
S'exécute avant le redémarrage de l'application.
postRestart
-
S'exécute après le redémarrage de l'application.
preUninstall
-
S'exécute avant la désinstallation de l'application.
postUninstall
-
S'exécute après la désinstallation de l'application.
Scripts de déploiement personnalisés (déploiements personnalisés uniquement)
install
-
Script d'installation principal pour les déploiements personnalisés. Ce script est responsable de l'installation de l'application ou du service.
restart
-
Script pour redémarrer l'application ou le service. Appelé au redémarrage de l'environnement.
uninstall
-
Script pour désinstaller l'application ou le service. Appelé lors de la fermeture de l'environnement ou de la suppression d'une application.
Propriétés du script
Chaque script est défini comme un objet doté des propriétés suivantes :
file
(obligatoire)-
Type : chaîne
Chemin d'accès au fichier de PowerShell script relatif au fichier manifeste. Le script doit avoir une
.ps1
extension. ignoreErrors
(facultatif)-
Type : valeur booléenne
Par défaut : faux
Lorsque ce paramètre est défini sur
true
, le déploiement se poursuit même si le script échoue. Utilisez-le pour des scripts ou des opérations de nettoyage non critiques.
Exemple de configuration de script
{
"scripts": {
"preInstall": {
"file": "backup-config.ps1",
"ignoreErrors": true
},
"postInstall": {
"file": "configure-app.ps1"
}
}
}