Blog
10 Installation de Docker
10.1 Qu’est-ce que Docker ? [1]
Docker est un logiciel open source développé en 2013 par Solomon Hykes. Cet outil informatique est utilisé pour la création, le déploiement et la gestion d’applications virtualisées sur un système d’exploitation spécifique. Pour être plus explicite, Docker se charge de réunir les services ou fonctions, les différentes bibliothèques, les fichiers de configuration, les dépendances et autres composants d’une application au sein d’un container. Chaque container exécuté partage tous les services du système d’exploitation qui accueille l’application virtualisée par la plateforme Docker.
Dans ses toutes premières versions, Docker était uniquement compatible avec Linux. Aujourd’hui, l’outil peut fonctionner avec d’autres systèmes d’exploitation comme Apple macOS ou Microsoft Windows. Par ailleurs, il est à noter que certaines versions de Docker sont spécialement conçues pour Microsoft Azure et Amazon Web Services.
Lorsqu’on évoque Docker, on fait généralement référence à plusieurs termes qui peuvent paraître floues voire incompréhensibles pour les personnes non initiées. La clarification de ces concepts importants permet toutefois de mieux comprendre les contours de l’outil.

10.2 Comment fonctionne Docker ?
Le logiciel open source Docker exploite le noyau Linux et de nombreuses fonctions de ce noyau comme les groupes de contrôle « cgroups » et les espaces de noms. Ces différents éléments permettent à l’outil d’opérer la séparation des processus pour que ces derniers puissent s’exécuter de manière autonome ou indépendante. Cette indépendance est notamment l’objectif des conteneurs Docker qui se chargent d’exécuter plusieurs processus et applications séparément les uns des autres. La finalité recherchée est d’optimiser l’utilisation de l’infrastructure des utilisateurs de Docker tout en garantissant un même niveau de sécurité que celui offert par des systèmes distincts.
Les outils de conteneurs, le logiciel Docker y compris, sont connectés à un modèle de déploiement basé sur une image spécifique. Ceci étant, le partage d’une application ou d’un ensemble de services avec toutes leurs dépendances et entre différents environnements est relativement simple et facile. Par ailleurs, il est à noter que Docker réalise aussi l’automatisation du déploiement des applications à l’intérieur d’un environnement de conteneurs.