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.
Création d'une offre groupée de source d'application
Lorsque vous utilisez la console AWS Elastic Beanstalk pour déployer une nouvelle application ou une version de l'application, vous avez besoin de télécharger un bundle source. Votre groupe source doit répondre aux critères suivants :
-
Se compose d'un seul fichier
ZIP
ou fichierWAR
(vous pouvez inclure plusieurs fichiersWAR
à l'intérieur de votre fichierZIP
) -
Ne dépasse pas 62,5 Mo
-
N'inclut pas un dossier parent ou un répertoire de niveau supérieur (sous-répertoires acceptés)
Si vous souhaitez déployer une application de travail qui traite des tâches en arrière-plan de façon périodique, votre groupe source d'application doit également inclure un fichier cron.yaml
. Pour de plus amples informations, veuillez consulter Tâches périodiques.
Si vous déployez votre application avec l'interface ligne de commande Elastic Beanstalk, AWS Toolkit for Eclipse ou AWS Toolkit for Visual Studio, le fichier ZIP ou WAR sera automatiquement structuré correctement. Pour plus d'informations, consultez Utilisation de l'interface de ligne de commande Elastic Beanstalk (EB), Création et déploiement d'applications Java sur Elastic Beanstalk et . AWS Toolkit for Visual Studio.
Sections
Création d'une solution groupée source à partir de la ligne de commande
Créer un bundle de fichiers source à l'aide de la commande zip
. Pour inclure les fichiers et les dossiers cachés, utilisez un schéma semblable au suivant.
~/myapp$ zip ../myapp.zip -r * .[^.]*
adding: app.js (deflated 63%)
adding: index.js (deflated 44%)
adding: manual.js (deflated 64%)
adding: package.json (deflated 40%)
adding: restify.js (deflated 85%)
adding: .ebextensions/ (stored 0%)
adding: .ebextensions/xray.config (stored 0%)
Cela permet de garantir que les fichiers de configuration Elastic Beanstalk et d'autres fichiers et dossiers qui commencent par un point sont inclus dans l'archive.
Pour les applications web Tomcat, utilisez jar
pour créer une archive web.
~/myapp$ jar -cvf myapp
.war .
Les commandes ci-dessus incluent des fichiers masqués qui peuvent augmenter la taille du bundle de fichiers source inutilement. Pour plus de contrôle, utilisez un modèle de fichier plus détaillé ou créez votre bundle source avec Git.
Création d'une solution groupée source avec Git
Si vous utilisez Git pour gérer le code source de votre application, utilisez la commande git archive
pour créer votre groupe source.
$ git archive -v -o myapp
.zip --format=zip HEAD
git archive
comprend uniquement les fichiers qui sont stockés dans Git, et exclut les fichiers ignorés et Git. Cela vous aide à conserver un bundle de fichiers source le plus petit possible. Pour plus d'informations, consultez la page de manuel git-archive
Compression de fichiers dans le Finder de Mac OS X ou l'Explorateur Windows
Lorsque vous créez un fichier ZIP
dans le Finder de Mac OS X ou l'Explorateur Windows, assurez-vous de compresser les fichiers et les sous-dossiers eux-mêmes, plutôt que de compresser le dossier parent.
Note
L'interface utilisateur graphique (GUI) sur les systèmes d'exploitation basés sur Mac OS X et sur Linux n'affiche pas les fichiers et les dossiers dont les noms commencent par un point (.). Utilisez la ligne de commande au lieu de l'interface utilisateur graphique pour compresser votre application si le fichier ZIP
doit inclure un dossier masqué, comme .ebextensions
. Pour que les procédures de ligne de commande créent un fichier ZIP
sur un système d'exploitation basé sur Linux ou sur Mac OS X, consultez Création d'une solution groupée source à partir de la ligne de commande.
Exemple
Supposons que vous avez un dossier de projet Python intitulé myapp
qui inclut les fichiers et les sous-dossiers suivants :
myapplication.py
README.md
static/
static/css
static/css/styles.css
static/img
static/img/favicon.ico
static/img/logo.png
templates/
templates/base.html
templates/index.html
Comme indiqué dans la liste des exigences ci-dessus, votre groupe source doit être compressé sans un dossier parent, afin que sa structure décompressée n'inclue pas un répertoire supplémentaire de niveau supérieur. Dans cet exemple, aucun dossier myapp
ne doit être créé lorsque les fichiers sont décompressés (ou, dans la ligne de commande, aucun segment myapp
ne doit être ajouté aux chemins d'accès aux fichiers).
Cet exemple de structure de fichiers est utilisé dans cette rubrique pour illustrer comment compresser des fichiers.
Pour compresser des fichiers dans le Finder de Mac OS X
-
Ouvrez votre dossier de projet de niveau supérieur et sélectionnez tous les fichiers et sous-dossier qui s'y trouvent. Ne sélectionnez pas le dossier de niveau supérieur lui-même.
-
Effectuez un clic droit sur les fichiers sélectionnés, puis choisissez Compresser X items, où X correspond au nombre de fichiers et de sous-dossiers que vous avez sélectionnés.
Pour compresser des fichiers dans l'Explorateur Windows
-
Ouvrez votre dossier de projet de niveau supérieur et sélectionnez tous les fichiers et sous-dossier qui s'y trouvent. Ne sélectionnez pas le dossier de niveau supérieur lui-même.
-
Effectuez un clic droit sur les fichiers sélectionnés, choisissez Envoyer vers, puis Compressed (zipped) folder (Dossier compressé).
Création d'une solution groupée source pour une application .NET
Si vous utilisez Visual Studio, vous pouvez utiliser l'outil de déploiement inclus dans AWS Toolkit for Visual Studio pour déployer votre application .NET sur Elastic Beanstalk. Pour de plus amples informations, veuillez consulter Déploiement d'applications Elastic Beanstalk dans .NET à l'aide de l'outil de déploiement.
Si vous avez besoin de créer manuellement un groupe source pour votre application .NET, vous ne pouvez pas créer simplement un fichier ZIP
contenant le répertoire du projet. Vous devez créer un package de déploiement web pour votre projet convenant pour le déploiement sur Elastic Beanstalk. Il existe plusieurs méthodes que vous pouvez utiliser pour créer un package de déploiement :
-
Créez le package de déploiement à l'aide de l'assistant Publier le site Web dans Visual Studio. Pour de plus amples informations, veuillez consulter Comment : créer un Package de déploiement Web dans Visual Studio
. Important
Lorsque vous créez le package de déploiement web, le nom du site doit commencer par
Default Web Site
. -
Si vous avez un projet .NET, vous pouvez créer le package de déploiement à l'aide de la commande msbuild, comme illustré dans l'exemple suivant.
Important
Le paramètre
DeployIisAppPath
doit commencer parDefault Web Site
.C:/> msbuild
<web_app>.csproj
/t:Package /p:DeployIisAppPath="Default Web Site" -
Si vous avez un projet de site web, vous pouvez utiliser l'outil Web Deploy IIS pour créer le package de déploiement. Pour plus d'informations, consultez Packaging and Restoring a Web site
. Important
Le paramètre
apphostconfig
doit commencer parDefault Web Site
.
Si vous déployez plusieurs applications ou une application ASP.NET Core, placez votre dossier .ebextensions
à la racine de votre bundle de fichiers source, côte à côte avec les ensembles d'applications et le fichier manifeste :
~/workspace/source-bundle/
|-- .ebextensions
| |-- environmentvariables.config
| `-- healthcheckurl.config
|-- AspNetCore101HelloWorld.zip
|-- AspNetCoreHelloWorld.zip
|-- aws-windows-deployment-manifest.json
`-- VS2015AspNetWebApiApp.zip
Test de votre solution groupée source
Vous pouvez souhaiter tester votre groupe source localement avant de le télécharger dans Elastic Beanstalk. Étant donné qu'Elastic Beanstalk utilise essentiellement la ligne de commande pour extraire les fichiers, il est préférable de réaliser vos tests à partir de la ligne de commande, plutôt qu'avec un outil GUI.
Pour tester l'extraction du fichier dans Mac OS X ou Linux
-
Ouvrez une fenêtre de terminal (Mac OS X) ou connectez-vous au serveur Linux. Accédez au répertoire qui contient votre groupe source.
-
A l'aide de la commande
unzip
outar xf
, décompressez l'archive. -
Assurez-vous que les fichiers décompressés s'affichent dans le même dossier que l'archive elle-même, plutôt que dans un nouveau répertoire ou dossier de niveau supérieur.
Note
Si vous utilisez le Finder de Mac OS X pour décompresser l'archive, un dossier de niveau supérieur sera créé, quelle que soit la manière dont vous avez structuré l'archive elle-même. Pour obtenir de meilleurs résultats, utilisez la ligne de commande.
Pour tester l'extraction de fichier sous Windows
-
Téléchargez ou installez un programme qui vous permet d'extraire des fichiers compressés via la ligne de commande. Par exemple, vous pouvez télécharger le programme gratuit unzip.exe depuis http://stahlforce.com/dev/index.php?tool=zipunzip
. -
Si nécessaire, copiez le fichier exécutable dans le répertoire qui contient votre groupe source. Si vous avez installé un outil à l'échelle du système, vous pouvez ignorer cette étape.
-
A l'aide de la commande adéquate, décompressez l'archive. Si vous avez téléchargé unzip.exe à l'aide du lien à l'étape 1, la commande est
unzip
.<archive-name>
-
Assurez-vous que les fichiers décompressés s'affichent dans le même dossier que l'archive elle-même, plutôt que dans un nouveau répertoire ou dossier de niveau supérieur.