La commande docker container commit
La commande docker container commit permet de créer une image à partir des modifications effectués dans un conteneur.
Autrement dit, cela permet d’exécuter un conteneur à partir d’une image, puis de faire des modifications (installations, mises à jour, copie de fichier etc) et enfin de créer une nouvelle image contenant ces modifications.
En pratique cette commande est très rarement utilisée. Nous passons par un Dockerfile, nous ne détaillerons donc pas plus.
La commande docker container logs
La commande docker container logs permet d’afficher les logs d’un conteneur.
Nous l’avons déjà utilisée dans le cours écrit.
Une option intéressante est –follow ou -f afin de suivre les logs d’un conteneur pendant son exécution. C’est très pratique pour déboguer.
Une autre option est -timestamps ou -t qui permet d’obtenir un timestamp pour chaque ligne de log.
La commande docker image tag
La commande docker image tag permet de créer un tag pour une image.
En effet, une même image peut avoir plusieurs tags et lorsque vous construisez vos images vous pouvez vouloir garder des versions antérieures.
Commande :
docker tag SOURCE:TAG CIBLE:TAGNous verrons que par convention, les tags des images sont souvent repository/nom:version.
Par exemple : fedora/httpd:2.3.1.
La commande docker image history
La commande docker image history permet de lister les couches ou les images qui utilisées pour la construction de l’image. Cela permet de voir comment une image a été créée et quelles instructions ont été exécutées.
Si vous le faites sur une image build localement vous aurez tous les couches intermédiaires utilisées pour le build qui seront des images.
Exemple :
IMAGE CREATED CREATED BY SIZE
2c5e53379716 32 minutes ago /bin/sh -c #(nop) CMD ["node" "/app/app.js"] 0B
45ccf9c8f11f 32 minutes ago /bin/sh -c #(nop) COPY file:8a58f07ded43d233… 24B
319f66e51754 33 minutes ago /bin/sh -c apt-get update && apt-get install… 169MB
77db8a47a99c 36 minutes ago /bin/sh -c #(nop) ENV DEBIAN_FRONTEND=nonin… 0B
d70eaf7277ea 6 days ago /bin/sh -c #(nop) CMD ["/bin/bash"] 0B Si l’image n’a pas été build localement vous n’aurez pas les images intermédiaires mais seulement les couches.
Si vous faites :
docker image history ubuntuVous aurez ainsi par exemple :
IMAGE CREATED CREATED BY SIZE
d70eaf7277ea 7 days ago /bin/sh -c #(nop) CMD ["/bin/bash"] 0B
<missing> 7 days ago /bin/sh -c mkdir -p /run/systemd && echo 'do… 7B
<missing> 7 days ago /bin/sh -c [ -z "$(apt-get indextargets)" ] 0B
<missing> 7 days ago /bin/sh -c set -xe && echo '#!/bin/sh' > /… 811B
<missing> 7 days ago /bin/sh -c #(nop) ADD file:435d9776fdd3a1834… 72.9MB Les missing signifient qu’il s’agit de couches intermédiaires mais pas d’images disponibles localement.

