Qu'est-ce que Docker ?

Docker vous permet de concevoir, de tester et de déployer rapidement des applications.

Présentation

Docker est une plateforme logicielle qui vous permet de concevoir, tester et déployer des applications rapidement. Docker enveloppe les logiciels dans des unités normalisées appelées conteneurs, qui rassemblent tous les éléments nécessaires à leur fonctionnement : bibliothèques, outils système, code et environnement d’exécution. Avec Docker, vous pouvez facilement déployer et dimensionner des applications dans n'importe quel environnement, avec l'assurance que votre code s'exécutera correctement.

L'exécution de Docker sur AWS constitue pour les développeurs et les administrateurs un moyen fiable et peu coûteux de développer, livrer et exécuter des applications distribuées à toutes les échelles.

Dernières annonces : Docker collabore avec AWS pour aider les développeurs à accélérer la diffusion d’applications modernes sur le cloud. Cette collaboration aide les développeurs à utiliser Docker Compose et Docker Desktop pour exploiter le même flux de travail local qu'ils utilisent aujourd'hui pour déployer de manière transparente des applications sur Amazon ECS et AWS Fargate. Lisez le blog pour de plus amples informations.

Fonctionnement de Docker

Docker vous offre une méthode standard pour l'exécution de votre code. Docker est un système d'exploitation pour conteneurs. De la même manière qu’une machine virtuelle virtualise le matériel serveur (c.-à-d. qu’il n’est plus nécessaire de le gérer directement), les conteneurs virtualisent le système d’exploitation d’un serveur. Docker est installé sur chaque serveur et vous offre des commandes simples que vous pouvez utiliser pour concevoir, démarrer ou arrêter des conteneurs.

Grâce à des services AWS comme AWS Fargate, Amazon ECSAmazon EKS et AWS Batch, l’exécution et la gestion de conteneurs Docker à grande l’échelle est un jeu d’enfant.

Fonctionnement de Docker

Pourquoi utiliser Docker

Docker vous permet d'envoyer du code plus rapidement, de standardiser les opérations de vos applications, de migrer aisément du code et de faire des économies en améliorant l'utilisation des ressources. Avec Docker, vous obtenez un objet unique que vous pouvez exécuter n'importe où de manière fiable. Grâce à sa syntaxe simple, Docker vous confère le contrôle total. Comme Docker est adopté à grande échelle, il s'accompagne d'un solide écosystème d'outils et d'applications standard.

Envoyer plus de logiciels, plus vite

En moyenne, les utilisateurs de Docker envoient 7 fois plus souvent des logiciels. Docker vous permet d'envoyer des services isolés aussi souvent que nécessaire.

Standardisation des opérations

Les petites applications conteneurisées facilitent le déploiement, l'identification des problèmes et le retour à une version antérieure pour leur résolution.

Migration aisée

Vous pouvez effectuer facilement la migration des applications basées sur des conteneurs Docker depuis vos machines locales de développement jusqu'à des déploiements dans l'environnement de production sur AWS.

Economies conséquentes

Les conteneurs Docker vous permettent d'exécuter plus facilement plus de code sur chaque serveur, améliorant ainsi votre utilisation et vous faisant économiser de l'argent.

Quand utiliser Docker

Vous pouvez utiliser des conteneurs Docker en tant que composantes de base pour la création d'applications et de plates-formes modernes. Grâce à Docker, il est facile de concevoir et d'exécuter des architectures de microservices distribués, de déployer votre code avec des pipelines standardisés d'intégration et de diffusion continues, de développer des systèmes de traitement des données hautement scalables et de créer des plates-formes entièrement gérées pour vos développeurs. La récente collaboration entre AWS et Docker vous permet de déployer plus facilement les artefacts Docker Compose sur Amazon ECS et AWS Fargate.

Microservices

Concevez et mettez à l'échelle des architectures d'applications distribuées en tirant parti de déploiements de code standardisés à l'aide de conteneurs Docker.

Intégration et diffusion continues

Diffusez vos applications plus rapidement en standardisant vos environnements et en supprimant les conflits entre les piles de langues et les versions.

Traitement de données

Fournit un service de traitement de Big Data. Rassemble des données et des paquets d'analyses sous la forme de conteneurs portables qui peuvent être exécutés par des utilisateurs qui ne disposent pas de formation technique.

Conteneurs en tant que service

Développez et envoyez des applications distribuées avec du contenu et une infrastructure sécurisée gérée par informatique.

Questions fréquentes (FAQ) sur Docker

Avec Docker, vous pouvez facilement déployer et dimensionner des applications dans n'importe quel environnement, avec l'assurance que votre code s'exécutera correctement. Tout cela est possible, car Docker intègre les logiciels dans des unités normalisées appelées conteneurs, qui rassemblent tous les éléments nécessaires à leur fonctionnement, notamment les bibliothèques, les outils système, le code et l'environnement d'exécution.

Une image Docker est un modèle en lecture seule qui définit votre conteneur. Cette image contient le code qui sera exécuté, notamment les éventuelles définitions des bibliothèques et des dépendances dont votre code a besoin. Un conteneur Docker est une image Docker instanciée (c.-à-d. en cours d'exécution). AWS propose Amazon Elastic Container Registry (ECR), un registre d’images pour le stockage d’images Docker et leur récupération rapide.

Les machines virtuelles virtualisent le matériel de serveur (c.-à-d. qu'il n'est plus nécessaire de le gérer directement), alors que les conteneurs virtualisent le système d'exploitation d'un serveur. Docker est un système d'exploitation (ou environnement d'exécution) pour conteneurs. Docker Engine est installé sur chacun des serveurs sur lesquels vous souhaitez exécuter des conteneurs. Il vous fournit un ensemble de commandes simples pour concevoir, démarrer ou arrêter des conteneurs.

Exécution de Docker sur AWS

AWS fournit une assistance pour les solutions Docker, qu'elles soient commerciales ou open source. Il existe plusieurs méthodes pour exécuter des conteneurs sur AWS, notamment Amazon Elastic Container Service (ECS), qui est un service de gestion de conteneurs hautes performances et extrêmement évolutif. Les clients peuvent facilement déployer leurs applications conteneurisées depuis leur environnement Docker local directement vers Amazon ECS. AWS Fargate est une technologie pour Amazon ECS qui vous permet d'exécuter des conteneurs en production sans déployer ni gérer d'infrastructure. Amazon Elastic Container Service for Kubernetes (EKS) vous permet d'exécuter facilement Kubernetes sur AWS. AWS Fargate est une technologie pour Amazon ECS, qui vous permet d'exécuter des conteneurs sans mettre en service ni gérer de serveurs. Amazon Elastic Container Registry (ECR) est un référentiel privé hautement disponible et sécurisé, qui vous permet de stocker et de gérer facilement vos images de conteneur Docker en chiffrant et compressant les images au repos afin qu'elles soient rapides à extraire et à sécuriser. AWS Batch vous permet d'exécuter des charges de travail de traitement par lots hautement scalables à l'aide de conteneurs Docker.

Mise en route avec Docker

Les étapes ci-dessous vous aideront à faire vos premiers pas avec Docker sur AWS en quelques minutes !