Module 7 — Présentation de Docker
Format : cours écrit + démo vidéo courte Durée cible vidéo : 6-8 min Statut : gratuit Estimation production : écrit 2-3h + vidéo démo 4-6h
Cours écrit
Pourquoi Docker par-dessus Proxmox
Proxmox gère déjà l'isolation au niveau VM/LXC. Docker ajoute un niveau d'isolation supplémentaire à l'intérieur d'un LXC/VM, au niveau applicatif : chaque service (Nextcloud, base de données, Jellyfin...) tourne dans son propre container Docker, avec ses propres dépendances, sans polluer le système hôte et sans conflits de versions entre applications.
Concrètement dans cette série : on aura un LXC "docker-host" dédié, et à l'intérieur, chaque service applicatif sera un container Docker séparé.
Concepts clés
- Image : le plan de construction d'une application (ex:
nextcloud:latest) — téléchargée depuis Docker Hub, jamais modifiée directement. - Container : une instance en cours d'exécution d'une image. Peut être démarré, arrêté, supprimé et recréé sans perte de données si les volumes sont bien configurés.
- Volume : stockage persistant en dehors du cycle de vie du container — indispensable pour ne pas perdre les données Nextcloud/Jellyfin quand on met à jour le container.
- Réseau Docker : permet à plusieurs containers de communiquer entre eux par leur nom (ex: le container Nextcloud parle au container MariaDB par le nom
db, sans exposer la base de données sur le réseau). - docker-compose : fichier YAML qui décrit un ensemble de containers, leurs volumes, réseaux et variables d'environnement — c'est l'outil qu'on utilisera pour tout le reste de la série plutôt que des commandes
docker runà rallonge.
Pourquoi docker-compose plutôt que des commandes manuelles
Une commande docker run avec tous les paramètres nécessaires pour Nextcloud est longue, difficile à retenir, et impossible à versionner proprement. Un fichier docker-compose.yml se sauvegarde, se partage, et permet de relancer tout un service en une seule commande (docker compose up -d). C'est le standard de facto pour l'auto-hébergement.
Script démo vidéo (6-8 min)
[0:00-0:30] Hook
"Docker, c'est le nom que tu vas entendre le plus souvent dans le monde du self-hosting. En 6 minutes, tu vas comprendre ce que ça fait et le voir tourner pour de vrai."
[0:30-2:00] Installer Docker dans le LXC
Démo : commandes d'installation officielles Docker sur Debian (script get.docker.com ou dépôt apt officiel), vérifier avec docker --version.
[2:00-4:00] Premier test
Démo : docker run hello-world, puis un exemple concret plus parlant — docker run -d -p 8080:80 nginx et montrer la page nginx accessible dans le navigateur.
"En une commande, on vient de déployer un serveur web. Pas d'installation manuelle, pas de configuration système — tout est dans l'image."
[4:00-6:30] Premier docker-compose.yml
Démo : créer un fichier docker-compose.yml simple (le même nginx, mais versionné), lancer avec docker compose up -d, expliquer chaque ligne du fichier à l'écran.
[6:30-7:30] CTA
"Maintenant qu'on a Docker opérationnel, on attaque le premier vrai service : ton serveur multimédia perso. Prochaine vidéo."