Différence entre une image Docker et un conteneur

Sous Docker, il existe des concepts tels que des images, des conteneurs, etc. Ils sont étroitement liés, mais en même temps différent. Au début de votre apprentissage de Docker, la compréhension de ces concepts est souvent confuse. Cet article explique la différence entre une image Docker et un conteneur.
 
 

Qu’est-ce qu’une image Docker?

Une image Docker est un fichier immuable, qui constitue une capture instantanée d’un conteneur. Généralement, les images sont créées avec la commande « docker build ». Et puis, ils vont produire un conteneur quand ils sont lancés avec la commande « run ». En revanche, dans un registre Docker, les images sont stockées comme « registry.hub.docker.com ». Comme elles peuvent devenir assez volumineuses, les images sont conçues pour composer des couches de d’autres images, ce qui permet d’envoyer une quantité minimale de données lors du transfert des images sur le réseau.
 
Les images sont stockées dans un registre Docker, tel que Docker Hub, et peuvent être téléchargées à l’aide de la commande docker pull:

$ docker pull ubuntu
Using default tag: latest
latest: Pulling from library/ubuntu
fdd5d7827f33: Pull complete
a3ed95caeb02: Pull complete
fd2731e4c50c: Pull complete
Digest: sha256:45b23dee08af5e43a7fea6c4cf9c25ccf269ee113168c19722f87876677c5cb2
Status: Downloaded newer image for ubuntu:14.04

 
Pour afficher les images Docker téléchargées, exécutez « docker images »:

$ docker images
REPOSITORY      TAG           IMAGE ID         CREATED         SIZE
ubuntu         14.04         25fd21cfc6c0     3 weeks ago     125MB

 

Qu’est-ce qu’un conteneur Docker?

Un conteneur Docker est une instance exécutable d’une image. En utilisant l’API ou la CLI de Docker, nous pouvons créer, démarrer, arrêter, déplacer ou supprimer un conteneur. De manière avantageuse, nous pouvons connecter un conteneur à un ou plusieurs réseaux, y attacher de la mémoire ou créer une nouvelle image sur la base de son état actuel. De plus, il consiste en une image Docker, un environnement d’exécution et un ensemble d’instructions standard.

Si on applique le concept de l’orienté objet. Si une image est une classe, un conteneur est une instance d’une classe, c’est-à-dire un objet d’exécution. Nous pouvons également dire que les conteneurs sont en quelque sorte la raison pour laquelle vous utilisez Docker car ils constituent des encapsulations légères et portables d’un environnement permettant d’exécuter des applications.
 

Conclusion

Ce que vous devez retenir, c’est que les images sont des instantanés figés de conteneurs vivants. Alors que les conteneurs exécutent les instances d’une image.
 
 

Partagez cet article

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *