Quand on travaille avec Docker, on utilise soit des images toutes faites, soit, comme moi, on préfère partir d’une base simple pour ajouter les composants dont on a besoin.
Cependant, c’est moins plaisant lorsqu’il faut recréer le conteneur pour modifier une seule option.
Dans mon cas, je devais recréer un conteneur avec des instructions de démarrage différentes parce que j’avais modifié mon script de démarrage.
Entre-temps, j’ai mis à jour plusieurs applications Python et j’en ai installé une nouvelle.
Je me suis donc retrouvé bien loin de mon image de départ.
L’idée est donc de réaliser un snapshot du conteneur et de mon système actuel pour pouvoir le redéployer plus tard.
Pour notre test, notre conteneur s’appellera centos_test.
Depuis l’hôte, il faut exécuter la commande suivante :
sh # docker commit -m="image with apk" centos_test centos_with_apk
sha256:93603e53ff5329b314da097e3e5607b60cd1ce126f48cae542c083c715f069f7
Cette commande crée une image locale nommée centos_with_apk, utilisable pour d’autres conteneurs.
On peut vérifier son existence avec :
sh # docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
centos_with_apk latest 93603e53ff53 52 seconds ago 297 MB centos latest d123f4e55e12 2 weeks ago 197 MB
Pour utiliser cette image, on peut lancer :
sh # docker run -it --name=image_testing centos_with_apk:latest /bin/bash
[root@24bd49cd0e0e /]#