Le principe
Transformer plusieurs réglages en projet reproductible
Jusqu’ici, vous avez donné les réglages à Docker dans une longue commande. Compose place ces réglages dans un fichier facile à relire, sauvegarder et relancer.
Compose lit un fichier YAML. Chaque service devient un conteneur et rejoint automatiquement le réseau privé du projet.
Avant de commencer
Le vocabulaire de Compose
compose.yaml.Étape 1
Créer le dossier du projet
Dans Documents, créez OwlNet-Docker\compose-demo\site, puis placez un fichier index.html dans le sous-dossier site.
<!doctype html>
<html lang="fr">
<meta charset="utf-8">
<title>OwlNet Compose</title>
<h1>Docker Compose fonctionne !</h1>
<p>Ce fichier vient de mon PC.</p>Étape 2
Créer et comprendre compose.yaml
Enregistrez ce fichier dans compose-demo, à côté du dossier site.
services:
web:
image: nginx:alpine
container_name: owlnet-compose-web
ports:
- "127.0.0.1:8084:80"
volumes:
- ./site:/usr/share/nginx/html:ro
restart: unless-stoppedimageIndique le modèle logiciel à utiliser : ici Nginx léger.portsRend le site accessible sur localhost:8084.volumesPrésente votre dossier site à Nginx.restartAutorise Docker à relancer le service après une interruption, sauf arrêt volontaire.:ro rend les fichiers accessibles en lecture seule dans le conteneur et 127.0.0.1 limite le site à votre PC.Étape 3
Lancer et vérifier le projet
Ouvrez PowerShell dans compose-demo, puis exécutez la commande. up signifie « créer ou démarrer le projet » et -d le laisse fonctionner en arrière-plan.
docker compose up -dRésultat attendu : dans Docker Desktop, un groupe Compose nommé compose-demo apparaît avec un conteneur en état Running.
docker compose logs --tail=20Les logs sont le journal du service. Ils aident à comprendre un démarrage ou une erreur. Ouvrez ensuite http://localhost:8084. Le texte « Docker Compose fonctionne ! » doit être visible.
Si cela ne fonctionne pas
Trois erreurs fréquentes
- Compose ne trouve pas le fichier : vérifiez que PowerShell est ouvert dans le dossier contenant
compose.yaml. - Erreur YAML : contrôlez l’alignement et remplacez les tabulations par des espaces.
- Le port est déjà utilisé : remplacez seulement
8084par un port libre, par exemple8086, puis relancez.
Fin du laboratoire
Arrêter proprement
docker compose downCette commande retire le conteneur et le réseau du projet, mais conserve compose.yaml et le dossier site.
Validation
Quiz rapide
Fin de l’étape
Votre premier projet Compose est reproductible.
L’étape suivante explique comment maintenir, mettre à jour et sécuriser vos projets sans perdre vos données.