Débutant45 min30 XP
Objectifs de cette leçon
- Installer Docker sur votre OS
- Vérifier le bon fonctionnement de Docker
- Comprendre Docker Desktop vs Docker Engine
Installation et premières commandes 🚀
Installer Docker
Sur Ubuntu/Debian
# Mettre à jour le système sudo apt update && sudo apt upgrade -y # Installer Docker sudo apt install -y docker.io docker-compose-plugin # Ajouter votre utilisateur au groupe docker sudo usermod -aG docker $USER # Appliquer (ou redémarrez la session) newgrp docker # Vérifier l'installation docker --version # Docker version 24.x.x docker compose version # Docker Compose version v2.x.x
Sur macOS
- Téléchargez Docker Desktop : https://www.docker.com/products/docker-desktop
- Installez-le comme une application normale
- Ouvrez Terminal et vérifiez :
docker --version docker compose version
Sur Windows
- Téléchargez Docker Desktop (option WSL 2 recommandée)
- Activez WSL 2 si demandé
- Redémarrez l'ordinateur
- Vérifiez dans PowerShell :
docker --version docker compose version
Premières commandes essentielles
1. Hello World 🐳
docker run hello-world
Ce qui se passe :
- Docker cherche l'image
hello-worlden local - Ne la trouve pas → la télécharge depuis Docker Hub
- Crée un conteneur à partir de cette image
- Le conteneur s'exécute et affiche le message
- Le conteneur s'arrête
2. Lancer un conteneur Ubuntu
# Lancer Ubuntu avec un terminal interactif docker run -it ubuntu bash # Vous êtes maintenant DANS le conteneur root@a1b2c3d4e5f6:/# whoami root root@a1b2c3d4e5f6:/# cat /etc/os-release PRETTY_NAME="Ubuntu 22.04.3 LTS" root@a1b2c3d4e5f6:/# exit # Retour à votre machine hôte
3. Lister les conteneurs
# Conteneurs en cours d'exécution docker ps # Tous les conteneurs (y compris arrêtés) docker ps -a # Exemple de sortie : # CONTAINER ID IMAGE COMMAND STATUS PORTS NAMES # a1b2c3d4e5f6 ubuntu "bash" Exited (0) happy_newton
4. Arrêter et supprimer
# Arrêter un conteneur docker stop <container_id> # Supprimer un conteneur docker rm <container_id> # Tout nettoyer d'un coup docker rm $(docker ps -aq)
Les commandes les plus utiles
| Commande | Description | Exemple |
|---|---|---|
docker run | Créer et lancer un conteneur | docker run -it ubuntu bash |
docker ps | Lister les conteneurs actifs | docker ps |
docker ps -a | Tous les conteneurs | docker ps -a |
docker stop | Arrêter un conteneur | docker stop abc123 |
docker rm | Supprimer un conteneur | docker rm abc123 |
docker images | Lister les images | docker images |
docker rmi | Supprimer une image | docker rmi ubuntu |
docker exec | Exécuter dans un conteneur | docker exec -it abc bash |
docker logs | Voir les logs | docker logs abc123 |
Pratiquons : nginx en 30 secondes
# Lancer nginx docker run -d -p 8080:80 --name mon-nginx nginx # -d : détaché (en arrière-plan) # -p : mapping de ports (hôte:conteneur) # --name : nommer le conteneur # Tester curl http://localhost:8080 # → Page de bienvenue nginx s'affiche 🎉 # Voir les logs docker logs mon-nginx # Arrêter et supprimer docker stop mon-nginx docker rm mon-nginx
Les flags importants
| Flag | Description | Exemple |
|---|---|---|
-d | Mode détaché (arrière-plan) | docker run -d nginx |
-it | Terminal interactif | docker run -it ubuntu bash |
-p | Mapper les ports | -p 8080:80 |
--name | Nommer le conteneur | --name mon-app |
-v | Monter un volume | -v /src:/app |
-e | Variable d'environnement | -e NODE_ENV=prod |
--rm | Supprimer à l'arrêt | --rm nginx |
Exercices 🎯
- Installation : Installez Docker sur votre machine et vérifiez avec
docker --version. - Hello World : Lancez
docker run hello-worldet observez le résultat. - Conteneur interactif : Lancez un conteneur Ubuntu et naviguez dans le filesystem.
- Nginx : Lancez nginx sur le port 8080, vérifiez avec votre navigateur, puis arrêtez-le.
Prochaine leçon : On va explorer les images Docker en profondeur.
Terminal interactif
Tapez une commande
Bienvenue dans le terminal Docker interactif !
Tapez 'help' pour voir les commandes disponibles.
$
Tapez une commande dans le terminal →