virli/tutorial/dockerfiles/interactive.md
2018-10-20 01:50:35 +02:00

1.7 KiB

\newpage

Modification interactive

Pour créer une image, commençons par entrer dans un nouveau conteneur :

``` docker container run -it ubuntu /bin/bash ```

Nous voilà maintenant dans le conteneur ! Il est assez épuré, il n'y a rien de superflu : même pas d'éditeur de texte : ni vim, ni emacs, même pas vi !

La première chose à faire est de télécharger la liste des paquets. En effet, afin de ne pas livrer de superflu, la liste des paquets et son cache ne sont pas incluses dans le conteneur.

``` apt-get update ```

Il peut arriver que des paquets présents dans l'image ne soient pas à jour. Afin de garder un environnement cohérent, il est recommandé de ne pas utiliser le gestionnaire de paquets pour mettre à jour les paquets présents de base, mais plutôt de contacter le mainteneur de l'image pour qu'il la mette à jour.

Installons maintenant un programme :

``` apt-get install nano ```

Lorsque l'installation de nano est terminée, quittez l'image en tapant exit.

Sauvegardez vos modifications en tant que nouvelle image Docker, avec la commande commit :

``` docker container commit CONTAINER my_nano ```

en remplaçant CONTAINER par le nom ou l'identifiant du container qui doit servir de modèle. my_nano est le nom que vous voudrez utiliser à la place d'ubuntu.

Testons sans plus attendre notre nouvelle image :

``` docker container run -it my_nano /bin/bash ```

Vous constatez cette fois que vous pouvez lancer nano, alors que vous ne pouvez toujours pas le faire dans un conteneur issu d'une image ubuntu !