Déploiement d'applications Elastic Beanstalk à partir de conteneurs Docker - AWS Elastic Beanstalk

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.

Déploiement d'applications Elastic Beanstalk à partir de conteneurs Docker

Elastic Beanstalk prend en charge le déploiement d'applications web à partir de conteneurs Docker. Les conteneurs Docker vous permettent de définir votre propre environnement d'exécution. Vous pouvez également choisir votre propre plateforme, votre langage de programmation et toutes les dépendances d'application, telles que les gestionnaires de package ou les outils, qui ne sont généralement pas pris en charge par les autres plateformes. Les conteneurs Docker sont indépendants, et incluent toutes les informations de configuration et les logiciels dont votre application web a besoin pour fonctionner. Toutes les variables d'environnement définies dans la console Elastic Beanstalk sont transmises aux conteneurs.

Les rubriques de ce chapitre supposent que vous avez une certaine connaissance des environnements Elastic Beanstalk. Si vous n'avez jamais utilisé Elastic Beanstalk, essayez le tutoriel de mise en route pour acquérir les bases. Ce chapitre suppose également que vous avez une connaissance élémentaire de Docker et de son fonctionnement. Pour de plus amples informations, veuillez consulter Docker Overview sur le site Web Docker.

Les branches de plateforme Docker

La plateforme Docker pour Elastic Beanstalk prend en charge les branches de plateforme suivantes :

Docker s'exécutant sur Amazon Linux 2 et Docker s'exécutant sur Amazon Linux AL2023

Elastic Beanstalk déploie des conteneurs Docker et du code source sur des instances EC2, puis les gère. Ces branches de plateforme offrent une prise en charge de plusieurs conteneurs. Vous pouvez utiliser l'outil Docker Compose pour simplifier la configuration, les tests et le déploiement de vos applications. Pour de plus amples informations sur cette branche de plateforme, veuillez consulter Utilisation de la branche de plateforme Docker.

ECS s'exécutant sur Amazon Linux 2 et ECS s'exécutant sur AL2023

Nous fournissons cette branche aux clients qui ont besoin d'un chemin de migration vers AL2023/AL2 à partir de la branche de plateforme mise hors service multiconteneurs Docker s'exécutant sur (AMI Amazon Linux). Les dernières branches de plateforme prennent en charge toutes les fonctionnalités de la branche de plateforme retirée. Aucune modification du code source n'est requise. Pour de plus amples informations, veuillez consulter Migration de Docker multiconteneurs s'exécutant sur Amazon Linux vers ECS sur Amazon Linux 2023. Si vous ne disposez pas d'un environnement Elastic Beanstalk qui s'exécute sur une branche de plateforme basée sur ECS, nous vous recommandons d'utiliser la branche de plateforme Docker s'exécutant sur Amazon Linux 2 64 bits. Ceci offre une approche plus simple et nécessite moins de ressources.

Cette branche de plateforme utilise Amazon ECS pour coordonner un déploiement de plusieurs conteneurs Docker vers un cluster Amazon ECS dans un environnement Elastic Beanstalk. Le cluster ECS contient des instances EC2 qui hébergent des conteneurs Docker. Pour réaliser l'orchestration de ce déploiement, Elastic Beanstalk crée une définition de tâche ECS qui inclut également une définition de conteneur. Chacune des instances de l'environnement exécute le même ensemble de conteneurs, qui sont définis dans un fichier Dockerrun.aws.jsonv2. Pour de plus amples informations, veuillez consulter Utilisation de la branche de plateforme Amazon ECS.

Branches de plateforme mises hors service s'exécutant sur une AMI Amazon Linux (AL1)

Le 18 juillet 2022, Elastic Beanstalk définira les statuts de toutes les branches de plateforme basées sur une AMI Amazon Linux (AL1) sur mise hors service. Développez chaque section qui suit pour en savoir plus sur chaque branche de plateforme retirée et son chemin de migration vers la dernière branche de plateforme s'exécutant sur Amazon Linux 2 ou Amazon Linux 2023 (recommandé).

Cette branche de plateforme peut déployer une image Docker, décrite dans un Dockerfile ou une définition Dockerrun.aws.json v1. Cette branche de plateforme n'exécute qu'un seul conteneur pour chaque instance. Ses branches de plateforme suivantes, Docker s'exécutant sur AL2023 64 bits et Docker s'exécutant sur Amazon Linux 2 64 bits, prennent en charge plusieurs conteneurs Docker par instance.

Nous vous recommandons de créer vos environnements avec la branche de plateforme la plus récente et prise en charge, Docker s'exécutant sur AL2023 64 bits. Vous pouvez ensuite migrer votre application vers l'environnement nouvellement créé. Pour plus d'informations sur la création de ces environnements, consultez Utilisation de la branche de plateforme Docker. Pour en savoir plus sur la migration, consultez Migration de votre application Elastic Beanstalk Linux vers Amazon Linux 2023 ou Amazon Linux 2.

Cette branche de plateforme utilise Amazon ECS pour coordonner un déploiement de plusieurs conteneurs Docker vers un cluster Amazon ECS dans un environnement Elastic Beanstalk. Si vous utilisez actuellement cette branche de plateforme retirée, nous vous recommandons de migrer vers la dernière version de branche de plateforme, ECS s'exécutant sur Amazon Linux 2023. La dernière branche de plateforme prend en charge toutes les fonctions de cette branche de plateforme abandonnée. Aucune modification du code source n'est requise. Pour de plus amples informations, veuillez consulter Migration de Docker multiconteneurs s'exécutant sur Amazon Linux vers ECS sur Amazon Linux 2023.

En plus des plateformes Docker mentionnées précédemment, il existe également la branche de plateforme préconfigurée Docker GlassFish qui s'exécute sur le système d'exploitation AMI Amazon Linux (AL1).

Cette branche de plateforme a été remplacée par les branches de plateforme Docker s'exécutant sur AL2023 64 bits et Docker s'exécutant sur Amazon Linux 2 64 bits. Pour de plus amples informations, veuillez consulter Déploiement d'une application GlassFish sur la plateforme Docker.