Docker est une plateforme open source qui automatise le déploiement, la gestion et l’exécution d’applications dans des conteneurs légers.
Un conteneur est :
Docker est une technologie de conteneurisation reposant sur le noyau Linux et ses fonctionnalités de virtualisation par conteneurs (LXC pour Linux Containers), notamment :
Docker offre des outils pour utilise ces fonctionnalités de manière simplifiée pour permettre, entre autres :
Un conteneur Docker se construit à partir d’une image.
Une image Docker est un package léger, autonome et exécutable d’un logiciel qui inclut tout ce qui est nécessaire pour l’exécuter :
De nombreuses images sont disponibles sur :
Il est bien sûr possible de proposer des images, d’en modifier d’autres et de déposer la modification sur le dépôt officiel.
L’application ou le service qui sera configuré ne nécessite qu’une partie des fonctionnalités de l’OS. Par exemple la mise en place d’un serveur DNS ne nécessite pas la présence de composants multimédia ou de programmation comme python.
Le démarrage d’une machine virtuelle peut être plus ou moins long en fonction aussi de la technique utilisée (virtualisation complète ou paravirtualisation).
Les conteneurs Docker s’exécutent sur une machine hôte :
Par ailleurs, la technologie mise en œuvre isole les applications les unes des autres et de l’infrastructure sous-jacente.
Docker permet des usages qu’il était difficilement envisageable auparavant.
Exemple : un développeur web peut :
C’est le principe des micro-services en facilitant la création de conteneurs Docker pour chaque service ou applications à provisionner selon les besoins.
Docker n’est ni un émulateur ni une solution de virtualisation. C’est un logiciel client-serveur basé sur des fonctionnalités de bas niveau du noyau Linux et ou de Windows.
L’approche de Docker consiste :
L'ordinateur contenant le système d’exploitation est central dans cette architecture et l’isolation est moins stricte.
Docker est ainsi associé à de la virtualisation légère et de ce fait est perçu comme fournissant moins de garantie d’isolation que la virtualisation classique. Docker est probablement à considérer comme complémentaire à la virtualisation classique.
Le terme conteneur décrit :
Le montage de volume permet la persistance des données des conteneurs.
Les conteneurs Docker ont quelques limites :
Docker se compose :
Docker dispose d’une fonctionnalité de dépôt central qui Docker Hub. Cette fonctionnalité est essentielle et consiste en un dépôt public, accessible avec une simple connexion Internet, qui permet de favoriser la réutilisation des images déjà préparées par des éditeurs de logiciels, des entreprises ou des particuliers. Ces contributeurs constituent la communauté qui s’est développée autour de la technologie Docker et c’est une des raisons principales de sa rapide adoption.
Site de Docker hub : https://hub.docker.com/
Sur Docker Hub :
Vous pouvez également faire partie de cette communauté et partager vos propres images Docker en créant au préalable votre compte sur Docker Hub.
INFORMATION
Pour prendre connaissance des images officielles maintenues sur le dépôt GitHub nommé docker-library/official-images, accédez au site https://github.com/docker-library/official-images au répertoire library.
Docker c’est aussi :
Docker propose un environnement de découverte appelé Play with Docker (PWD) :
Création d'une instance et vérification de la version de Docker