Image ou conteneur

L'image est la recette, le conteneur est le plat : une image peut lancer autant de conteneurs qu'on veut, chacun avec son propre état. Supprimer un conteneur laisse l'image intacte, et modifier un conteneur ne modifie jamais l'image.

Comment ça marche

docker images liste les images, docker ps -a liste les conteneurs. Chaque conteneur garde la trace de l'image dont il est issu. Pour qu'un changement arrive dans tous les conteneurs, mets-le dans le Dockerfile, construis une nouvelle image et recrée les conteneurs.

Ce qui casse

Corriger un fichier avec docker exec ne répare qu'un seul conteneur. Le prochain conteneur lancé depuis la même image, après un plantage, un déploiement ou une recréation, revient avec l'ancien fichier.

Dans un terminal

docker images
docker ps -a --format '{{.Names}}  {{.Image}}  {{.Status}}'

Regarde-le casser, puis répare-le

Écris le Dockerfile ou le fichier compose, tape les commandes docker, et regarde un serveur simulé les exécuter à travers redémarrages, mises à jour et trafic. Gratuit pour commencer.