Dans la
première partie de la traduction de la série Docker, nous avons donné un aperçu de ce système. En particulier, nous avons expliqué pourquoi les technologies de conteneurisation sont importantes de nos jours, ce que sont les conteneurs Docker et à quoi ils peuvent être comparés. Aujourd'hui, nous allons parler de l'écosystème Docker et examiner les termes importants que vous pouvez rencontrer lors de l'apprentissage et de l'utilisation de Docker. Poursuivant l'analogie avec différents goodies, imaginez que nos termes sont des beignets. Une douzaine de beignets.
→
Partie 1: les bases→
Partie 2: termes et concepts→
Partie 3: Fichiers Dockerfile→
Partie 4: réduire la taille des images et accélérer leur assemblage→
Partie 5: équipes→
Partie 6: travailler avec des donnéesTermes de l'écosystème Docker
J'ai divisé les termes que vous pouvez rencontrer en travaillant avec Docker en deux parties. Je pense que cela les rendra plus faciles à retenir. Le premier bloc de termes fera référence aux mécanismes Docker. La seconde consiste à mettre à l'échelle des solutions basées sur des conteneurs.
Mécanismes Docker
▍ Plateforme Docker
DockerLa Docker Platform (
Docker Platform ) est un programme qui nous permet de regrouper des applications dans des conteneurs et de les exécuter sur des serveurs. La plateforme Docker vous permet de mettre du code et ses dépendances dans des conteneurs. En conséquence, les systèmes basés sur des conteneurs sont faciles à mettre à l'échelle car les conteneurs peuvent être transportés et utilisés.
Moteur engineDocker
MoteurLe Docker
Engine (
Docker Engine ) est une application client-serveur. Docker a divisé le moteur Docker en deux produits.
Docker Community Edition (CE) est un logiciel gratuit basé en grande partie sur
des outils open source .
Vous utiliserez probablement cette version particulière de Docker.
Docker Enterprise est une version payante du système qui offre aux utilisateurs des capacités supplémentaires dans les domaines du support, de la gestion et de la sécurité du système. La version payante de Docker donne à l'entreprise les moyens nécessaires à son existence.
▍ Docker client
Client Docker et autres mécanismes de l'écosystème (extraits de la documentation )Le
client Docker est le principal outil utilisé pour interagir avec Docker. Ainsi, lorsque vous travaillez avec l'
interface de ligne de commande Docker (CLI), des commandes sont entrées dans le terminal qui commencent par le mot-clé
docker
, faisant référence au client. Le client utilise ensuite l'API Docker pour envoyer des commandes au démon Docker.
▍Docker Demon
Le démon Docker (
Docker Daemon ) est un serveur Docker qui écoute les demandes à l'API Docker. Le démon Docker gère les images, les conteneurs, les réseaux et les volumes.
▍Toma Docker
TomaLes volumes Docker sont le mécanisme préféré pour stocker de manière permanente les données consommées ou produites par les applications.
▍ Registre Docker
Le Docker Registry (
Docker Registry ) est une plate-forme distante utilisée pour stocker des images Docker. Lorsque vous travaillez avec Docker, les images sont envoyées au registre et téléchargées à partir de celui-ci. Un registre similaire peut être organisé par ceux qui utilisent Docker. De plus, les fournisseurs de services cloud peuvent gérer leurs propres registres. Par exemple, cela s'applique à
AWS et
Google Cloud .
▍Docker Hub
Le
Docker Hub est le plus grand registre d'images Docker. De plus, c'est ce registre qui est utilisé lorsque vous travaillez avec Docker par défaut. Vous pouvez utiliser le Docker Hub gratuitement.
▍ Référentiel Docker
Un
référentiel Docker est une collection d'images Docker qui partagent le même nom et la même balise. Les balises sont des identifiants d'images.
En règle générale, les référentiels stockent différentes versions des mêmes images. Par exemple,
Python est le nom du référentiel Docker officiel le plus populaire sur le hub Docker. Et voici Python: 3.7-slim est la version de l'image avec la balise 3.7-slim dans le référentiel Python. Vous pouvez envoyer l'intégralité du référentiel ou une image distincte au registre.
Parlons maintenant des termes de l'écosystème Docker liés à la mise à l'échelle.
Mise à l'échelle des solutions basées sur des conteneurs
Les quatre termes suivants se réfèrent à l'utilisation simultanée de plusieurs conteneurs.
▍ Docker Network
Réseau Docker (extrait de la documentation )Les mécanismes de
Docker Networking (
Docker Networking ) permettent la communication entre les conteneurs Docker. Les conteneurs connectés au réseau peuvent s'exécuter sur le même hôte ou sur des hôtes différents. Des détails sur le sous-système réseau Docker sont disponibles
ici .
▍Docker Compose
Docker Compose est un outil qui simplifie le déploiement d'applications qui nécessitent plusieurs conteneurs Docker pour s'exécuter. Docker Compose vous permet d'exécuter les commandes décrites dans le
docker-compose.yml
. Ces commandes peuvent être exécutées autant de fois que nécessaire. L'interface de ligne de commande Docker Compose facilite l'interaction avec des applications multi-conteneurs. Cet outil est installé lors de l'installation de Docker.
▍Docker Swarm
Nuée d'abeillesDocker Swarm est une solution pour gérer les déploiements de conteneurs (c'est-à-dire, comme on dit, pour orchestrer les conteneurs). Découvrez Docker Swarm dans ce didacticiel officiel Docker. Je vous recommande de ne pas perdre de temps à explorer Docker Swarm si vous n'avez aucune bonne raison.
▍ Docker Services
Les services Docker sont diverses parties d'une application distribuée. Voici ce que la
documentation en dit:
Les services ne sont que des «conteneurs en production». Une seule image est exécutée dans le service, mais le service détermine comment l'image est exécutée. En particulier, nous parlons des ports à utiliser, du nombre de répliques du conteneur à effectuer pour que le service fournisse la puissance de calcul nécessaire, etc. La mise à l'échelle des services implique de modifier le nombre d'instances du conteneur dans lequel un certain programme s'exécute, de sorte que le service se voit allouer autant de ressources système qu'il le faut pour résoudre un certain problème.Les services Docker vous permettent de mettre à l'échelle des conteneurs dans plusieurs démons Docker, et la technologie Docker Swarm existe également.
Liste courte des termes
Reprenons en quelques mots les termes qui viennent de vous être présentés:
Mécanismes Docker:
- Plateforme Docker - logiciel qui vous permet de travailler avec des conteneurs.
- Le moteur Docker est une application client-serveur (CE ou Enterprise).
- Le client Docker est un programme qui vous permet d'interagir avec le démon Docker via la CLI.
- Le démon Docker est le serveur Docker chargé de gérer les principaux mécanismes du système.
- Tom Docker est une banque d'informations utilisée dans des conteneurs.
- Le registre Docker est un référentiel distant d'images.
- Le Docker Hub est le plus grand registre Docker utilisé par défaut.
- Référentiel - Une collection d'images Docker du même nom.
Mise à l'échelle:
- Le sous-système réseau Docker est un environnement qui vous permet d'organiser l'interaction des conteneurs.
- Docker Compose est une technologie qui simplifie le travail avec des applications multi-conteneurs.
- Docker Swarm est un outil de gestion de déploiement de conteneurs.
- Les services Docker sont des conteneurs en production.
Nous avons dit plus tôt que nous examinerons une douzaine de termes de l'écosystème Docker en les comparant à une douzaine de beignets. Nous avons déjà revu 12 termes et il semblerait que nous pouvons nous arrêter ici. Mais
juste au cas où , nous ajouterons un autre terme à notre liste.
Ici, juste au cas où, un autre beignetCe terme ne fait pas référence à la plate-forme Docker elle-même, mais à une technologie qui est très souvent utilisée conjointement avec Docker.
Kubernetes
KubernetesKubernetes est une technologie qui automatise le déploiement, la mise à l'échelle et la gestion des applications conteneurisées. C'est le leader incontesté du marché des produits d'orchestration de conteneurs. Si vous avez besoin d'un outil pour travailler avec des groupes de conteneurs, pour mettre à l'échelle des solutions en fonction de ceux-ci, utilisez Kubernetes plutôt que Docker Swarm. Kubernetes ne fait pas partie de Docker. Ils et Docker ressemblent plus à de meilleurs amis.
Maintenant que vous vous êtes familiarisé avec les concepts généraux de Docker et la terminologie, vous pouvez commencer des expériences pratiques.
Conclusion: faites cuire des beignets avec Docker
Rappelez-vous comment la dernière fois que nous avons comparé la plate-forme Docker avec le four, qui est installé dans la cuisine? Il est maintenant temps d'installer Docker dans votre «cuisine» et de cuisiner quelque chose.
Docker peut être exécuté localement sur Linux, Mac et Windows. Si vous utilisez un Mac ou Windows, vous pouvez installer la dernière version de Docker Desktop à
partir d'ici . Soit dit en passant, avec ce programme, Kubernetes est également installé. Si vous installez Docker sur une autre plate-forme, vérifiez
ici pour trouver une version appropriée.
Après avoir installé Docker, jetez un œil aux deux premières parties du
guide officiel .
La prochaine fois, nous continuerons de parler de Docker. Parlons en particulier des fichiers Dockerfile.
Chers lecteurs! Si, à la lecture des documents de cette série, vous découvrez Docker, dites-nous comment vous prévoyez d'utiliser les technologies de conteneurisation d'applications.
