Valider un conteneur en une nouvelle image
Dans cette étape, vous apprendrez à valider les modifications apportées à l'intérieur d'un conteneur en cours d'exécution en une nouvelle image Docker. Cela est utile lorsque vous souhaitez enregistrer l'état d'un conteneur après avoir effectué des modifications, telles que l'installation de logiciels ou la configuration de fichiers.
Tout d'abord, exécutons un simple conteneur Ubuntu. Nous utiliserons l'image ubuntu
. Étant donné que nous allons apporter des modifications à l'intérieur du conteneur, nous devons l'exécuter de manière interactive avec un pseudo-TTY.
docker run -it ubuntu
Vous devriez maintenant être dans le shell du conteneur Ubuntu. Effectuons une simple modification, comme l'installation du paquet curl
.
apt-get update
apt-get install -y curl
Une fois l'installation terminée, quittez le shell du conteneur en tapant exit
.
exit
Maintenant que vous avez quitté le conteneur, les modifications que vous avez apportées (installation de curl
) sont toujours présentes dans cette instance de conteneur spécifique. Pour enregistrer ces modifications sous forme d'une nouvelle image, vous devez valider le conteneur.
Tout d'abord, trouvez l'ID du conteneur que vous venez de quitter. Vous pouvez utiliser la commande docker ps -a
pour lister tous les conteneurs, y compris ceux qui se sont arrêtés.
docker ps -a
Recherchez le conteneur créé à partir de l'image ubuntu
et notez son CONTAINER ID
.
Maintenant, utilisez la commande docker commit
pour créer une nouvelle image à partir de ce conteneur. La syntaxe de base est docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]
. Nous allons valider le conteneur et donner un nom et une étiquette à la nouvelle image. Remplacez <CONTAINER_ID>
par l'ID réel que vous avez trouvé.
docker commit < CONTAINER_ID > my-ubuntu-with-curl:v1
Cette commande crée une nouvelle image nommée my-ubuntu-with-curl
avec l'étiquette v1
. Vous pouvez vérifier que la nouvelle image a été créée en listant vos images locales.
docker images
Vous devriez voir my-ubuntu-with-curl
dans la liste des images. Cette nouvelle image inclut maintenant le paquet curl
que vous avez installé dans le conteneur.