<hr>
Paul Schuhmacher
Module: Docker
<hr>
Installer WSL2 et Docker Desktop. Dans Docker Desktop, penser à bien utiliser l'instance de GNU/Linux installée avec WSL2 (Réglages/Ressources/WSL).
Sur votre instance GNU/Linux (Ubuntu, Debian, etc.), ajouter votre
utilisateur au groupe docker
pour éviter d'avoir à sudo
toute
commande
#ajouter l'utilisateur foo au groupe docker
sudo usermod -aG docker foo
#afficher les groupes auquel appartient l'utilisateur courant (docker doit s'afficher)
groups
#tester (accès à la socket)
docker run hello-world
Pour d'autres détails d'installation, voir le support de cours module 2 ou vous rendre sur la documentation officielle
Suivre le guide officiel What is a container ?.
Questions supplémentaires :
- Trouver le code source du site web dans l'image.
- Dans Docker Desktop, supprimer le conteneur précédemment crée, ainsi que l'image
welcome-to-docker
. - Refaire le guide mais cette fois-ci en utilisant la CLI et non la GUI de Docker Desktop. Pour cela, inspecter la commande
docker run
, soit depuis la documentation client (docker run --help
), soit depuis la documentation en ligne. - En utilisant
docker
, stopper et supprimer le conteneur crée précédemment.
Pour répondre aux questions, vous devez uniquement utiliser le
client docker
(CLI)
Vous pouvez utiliser Docker Desktop et sa GUI uniquement pour tester vos idées ou inspecter ce que vous faites
- Télécharger le code source de l'image sur Github.
- Construire l'image à partir du Dockerfile avec le nom
welcome-to-docker
. - Lancer le conteneur à partir de l'image précédemment crée.
- Modifier le code source de l'app. Changer le message affiché
'You ran your first container.'
par'Hello, world !'
. Relancer le conteneur. Qu'observez-vous ? Pourquoi ? - Reconstruire l'image précédemment supprimée et relancer le conteneur. Quelles étapes de construction sont relancées ? Tester.
- Est-il possible de Lancer plusieurs conteneurs à partir de la même image ? Essayer.
- Dans un terminal, utiliser le client
docker
. Comment afficher la liste des commandes disponibles dedocker
? Comment afficher l'aide sur une commande spécifique ? Trouver un moyen de lister les conteneurs et les images présentes dans le Docker Engine. - Quelle taille fait le code source de l'image ? Quelle taille fait
l'image
welcome-to-docker
? Expliquer la différence. Tip: utiliser la commande UNIX disk usagedu
. Pour en savoir plus: (man du
); - A l'aide de la documentation de
docker
, trouver le moyen de redémarrer le dernier conteneur lancé. - Inspecter le
Dockerfile
. Listez les instructions et découvrez à quoi elles servent en vous servant de la documentation. - Changer le code source pour le remettre dans son état initial
(message
'You ran your first container.'
). Si vous reconstruisez l'image, Docker va essayer de la charger depuis le cache. Trouver un moyen de reconstruire l'image (docker build
) sans avoir recours au cache. Nommer cette image comme la précédente, soitwelcome-to-docker
. Construire l'image. Inspecter la liste de vos images. Qu'observez-vous ? Lancer un conteneur avecdocker
à partir de la nouvelle image. Supprimer l'ancienne image avecdocker
(dangling image); - Lancer un nouveau conteneur nommé
just-another-container
à partir de l'imagewelcome-to-docker
- Le conteneur exécuté un serveur web. Un serveur web est un processus daemonisé auquel doit être associé un port pour récupérer des données. Comment savoir à quel port de la machine hôte le port du conteneur doit être associé pour que tout fonctionne correctement ?
Suivre le guide officiel Run Docker Hub images.
Suivre le guide Get Started Guide jusqu'à la partie 3 (incluse).