0.2 · Installer Docker et lancer son premier conteneur

Fondamentaux

0.2Installer Docker et lancer son premier conteneur

Objectif : Installer Docker sur son poste et exécuter son premier conteneur en toute confiance.
Temps estimé : 12 min · lecture autonome · Si vous n'avez que 5 min : lisez « L'essentiel en 30s » + le schéma.

L'essentiel en 30 secondes

  • Docker Desktop sur Windows/macOS, Docker Engine sur Linux (+ plugin Compose) : prenez les paquets officiels.
  • docker version + docker compose version valident l'installation ; docker run hello-world valide l'exécution de bout en bout.
  • Retenez le trio pull → run → ps : télécharger, créer + démarrer, voir — tout le guide le rejoue à grande échelle.

Mini-cas filé — Idir prépare son poste à Alger sans conflit de daemon

Idir, devops junior à Alger, prépare son poste Windows : au lieu d'empiler les installeurs, il suit le rituel. Il installe Docker Desktop depuis les paquets officiels (avec WSL 2 et la virtualisation activée dans le BIOS), vérifie avec docker version et docker compose version, puis lance docker run hello-world : le message s'affiche — client, daemon, registre et exécution fonctionnent. Il liste ensuite avec docker images et docker ps -a pour lire ce qui vient de se passer, puis nettoie. Son terrain de jeu est prêt, sans deuxième moteur en parallèle.

Cas autonome de cette section : il revient dans le cours, le schéma, le script et le défi 48h de la section 0.2.

1. Que faut-il installer ?

Sur Windows et macOS, on installe Docker Desktop (interface + moteur + Compose inclus). Sur Linux, on installe Docker Engine (paquets officiels) puis le plugin Compose. Dans tous les cas, on vérifie avec docker version et docker compose version. Idir prend les paquets officiels (docs.docker.com), jamais de dépôt exotique, et n'installe qu'un seul moteur pour éviter les conflits de daemon.

2. Le rituel hello-world

docker run hello-world télécharge une mini-image de test, crée un conteneur, l'exécute (il affiche un message) puis le termine. Si ce message s'affiche, tout fonctionne : le client parle au daemon, le registre répond, l'exécution marche. Idir garde hello-world comme test de régression : en cas de panne future, il rejoue ce rituel pour isoler le problème.

3. Lire ce qui vient de se passer

docker images montre l'image téléchargée, docker ps -a le conteneur terminé. Retenez le trio : pull (télécharger), run (créer + démarrer), ps (voir). Tout le reste du guide rejoue ce trio à grande échelle. Idir lit ses images et ses conteneurs après chaque lancement : voir ce que l'on vient de faire est le réflexe de base.

Erreur d'interprétation fréquente : « J'installe deux moteurs pour comparer, j'oublie la virtualisation, et je lance des images inconnues dès le premier jour ». Non, triple faute. Un seul moteur : deux daemons en parallèle créent des conflits. Sur Windows, WSL 2 + virtualisation BIOS activée, sinon le moteur ne démarre pas. Et on commence par hello-world, l'image de test minimale — pas par des images inconnues dont on ignore le contenu.
Installation vérifiée Installer, vérifier les versions, lancer hello-world : le socle est validé. Installer Desktop/Engine Paquetsofficielsdocker version Installationprouvéedocker run hello-world Exécutionprouvée
Installer, vérifier les versions, lancer hello-world : le socle est validé.
Version texte du schéma (SEO / lecteurs d'écran / traduction) : 1) Idir, devops junior à Alger, installe le bon paquet officiel : Docker Desktop sur Windows/macOS (avec WSL 2 et virtualisation BIOS sur Windows), Docker Engine + plugin Compose sur Linux — un seul moteur, pas deux. 2) Il vérifie l'installation avec docker version et docker compose version. 3) Il valide l'exécution avec docker run hello-world (la mini-image se télécharge, le conteneur affiche son message puis se termine), puis lit le résultat avec docker images et docker ps -a. Leçon : ce rituel est aussi le test de régression à rejouer à chaque panne future.

🔎 Exemple concret — 🔎 Exemple concret — Vérification complète

Idir valide son installation de bout en bout avec quatre commandes.

docker version
docker compose version
docker run hello-world
docker ps -a

Lecture : les deux premières commandes prouvent l'installation, la troisième prouve l'exécution, la dernière montre le conteneur terminé.

Leçon : en cas de panne future, on rejoue ce rituel pour isoler le problème.

Vocabulaire de la section

Docker Desktop
L'application tout-en-un (Windows/macOS) : moteur, Compose, interface.

Exemple simple : Idir l'installe sur son Windows avec WSL 2.

Ce que ce n'est pas : le moteur Linux en ligne de commande seule.

Réflexe : Windows/macOS → Desktop d'abord.

Docker Engine
Le moteur sous Linux : daemon + client en ligne de commande.

Exemple simple : Idir l'installera plus tard sur son serveur Linux avec le plugin Compose.

Ce que ce n'est pas : l'interface graphique Desktop.

Réflexe : Linux → Engine + plugin Compose.

hello-world
L'image de test minimale qui valide l'installation.

Exemple simple : Idir la lance en premier et garde la commande comme test de régression.

Ce que ce n'est pas : une image applicative à garder en production.

Réflexe : panne suspecte → rejouer hello-world.

Daemon
Le service de fond qui exécute réellement les conteneurs.

Exemple simple : Idir comprend que son docker run hello-world a été exécuté par le daemon.

Ce que ce n'est pas : la commande tapée au clavier.

Réflexe : moteur qui ne démarre pas → virtualisation et daemon d'abord.

Client
La commande docker qui dialogue avec le daemon.

Exemple simple : Idir tape docker version : le client interroge le daemon.

Ce que ce n'est pas : le service qui exécute les conteneurs.

Réflexe : le client ordonne, le daemon exécute.

En pratique — En pratique — Installer et valider

  1. Installez Docker Desktop (ou Engine + Compose sur Linux), comme Idir, depuis les paquets officiels.
  2. Lancez docker version et docker compose version.
  3. Exécutez docker run hello-world et lisez le message.
  4. Listez images et conteneurs (images, ps -a), puis nettoyez.
Votre poste exécute des conteneurs : le terrain de jeu est prêt.

Script pas-à-pas — installer et valider comme Idir (10 min)

1) Installez le paquet officiel : Docker Desktop sur Windows/macOS (activez WSL 2 + virtualisation BIOS sur Windows) ou Engine + plugin Compose sur Linux. 2) Tapez docker version puis docker compose version : les deux répondent. 3) Tapez docker run hello-world : lisez le message de validation. 4) Tapez docker images puis docker ps -a : repérez l'image hello-world et son conteneur terminé. 5) Nettoyez le conteneur de test et gardez la séquence : c'est votre test de régression.

Si le moteur ne démarre pas sur Windows, contrôlez WSL 2 et la virtualisation avant tout le reste.

Modèle copier-coller — ma check-list d'installation

docker version
docker compose version
docker run hello-world
docker images
docker ps -a
# OK si : versions affichées + message hello-world + image et conteneur listés.

Poste Windows

Idir sur Windows : Docker Desktop + WSL 2 + virtualisation BIOS activée, puis le rituel hello-world.

Poste macOS

Collègue d'Idir sur Mac : Docker Desktop, mêmes quatre commandes de validation.

Serveur Linux

Idir sur Linux : Docker Engine via paquets officiels + plugin Compose, mêmes vérifications.

Panne future

Le moteur semble cassé dans un mois : Idir rejoue docker run hello-world pour isoler client, daemon, registre et exécution.

✓ Bonnes pratiques

  • Prenez les paquets officiels (docs.docker.com), pas les dépôts exotiques.
  • Activez le démarrage de Docker Desktop au besoin.
  • Gardez hello-world comme test de régression.

✗ Pièges fréquents

  • Installer deux moteurs en parallèle (conflits de daemon).
  • Oublier la virtualisation activée dans le BIOS (Windows).
  • Lancer des images inconnues dès le premier jour.

Points clés à retenir

  • Desktop sur Windows/macOS, Engine sur Linux.
  • docker version valide l'installation.
  • docker run hello-world valide l'exécution.
  • pull → run → ps : le trio de base.

Défi 48h — appliquez demain

Exécutez la check-list du modèle sur votre poste comme Idir : installez le paquet officiel, affichez les deux versions, lancez hello-world, puis listez avec images et ps -a.

Checklist sortie de section
  • Docker est installé depuis les paquets officiels (Desktop ou Engine + Compose).
  • docker version et docker compose version répondent.
  • docker run hello-world affiche son message et je lis le résultat avec images et ps -a.
Auto-évaluation 1-5 : est-ce que je sais dire ce que prouve chaque commande du rituel ?Auto-évaluation 1-5 : mon poste est-il prêt et nettoyé (un seul moteur, test passé) ?

Questions fréquentes

Docker Desktop est-il gratuit ?

Pour un usage personnel, l'apprentissage et les petites structures, oui. Les grandes entreprises doivent vérifier la souscription. Sur Linux, le moteur reste libre — Idir apprend donc sans payer.

WSL 2 est-il obligatoire sur Windows ?

Oui, Docker Desktop s'appuie dessus : installez WSL 2 et activez la virtualisation, sinon le moteur ne démarre pas. C'est le premier contrôle d'Idir quand Desktop refuse de se lancer.

Vérifiez votre compréhension

Que prouve un « docker run hello-world » qui affiche son message ?

Ressources supplémentaires (optionnel, pour aller plus loin)

Examen du niveau 0Questions inédites et durcies pour valider vos acquis