version une page
ÉnoncĂ© officiel · Module 1 · 25 %
DÉMO semaine 5

Laboratoires
Application conteneurisée

Trois laboratoires Docker et une expérimentation pour emballer le site de Cornucopia, la ferme maraßchÚre bio de Flora et Hazel, du serveur artisanal à l'essaim.

420-5A4-MT · Individuel · Examen pratique semaine 5
Le scénario

Flora & Hazel emballent leur ferme bio (Cornucopia)

Le site WordPress de Cornucopia, la ferme maraßchÚre bio de Flora et Hazel, gÚre les abonnements aux paniers de légumes de saison. Mais l'application vit sans armure sur la machine : fragile, vulnérable aux attaques web, impossible à déplacer ou à cloner. Pendant que les abonnés se multiplient et que les incidents guettent, l'agence de Flora (c'est vous !) pose les techniques fondatrices du métier : emballer l'application dans des conteneurs Docker, la décrire dans une partition Compose, puis l'orchestrer dans un essaim Swarm, au fur et à mesure que les besoins augmentent et que la situation le requiert.

La mĂȘme application traverse trois dĂ©ploiements, de plus en plus solides. À chaque Ă©tape, la mĂȘme preuve vivante : votre WordPress rĂ©pond dans le navigateur de la machine hĂŽte, avec un article illustrĂ© publiĂ© dedans.

Votre mission

La mĂȘme application, trois dĂ©ploiements

1 · Un seul conteneur

WordPress et MySQL ensemble dans une boĂźte LAMP.
Semaine 2 · 5 points.

2 · Un conteneur par service

La partition Docker Compose : HTTP et MySQL séparés.
Semaine 3 · 10 points.

3 · L'essaim

WordPress répliqué sur un Docker Swarm de 5 noeuds.
Semaine 4 · 10 points.

+ From scratch

L'expérimentation : une prison à la main, sans Docker.
1 point bonus.

Note : L'énoncé de tout le projet est composé des énoncés de chacun de ces 3 laboratoires.
En cas de conflit entre la version « une page » et celle-ci, la version des diapositives prévaut.

Nouveau cette année

Vos instances, votre choix d'infrastructure

Chaque noeud est une instance. Vous choisissez l'infra, au lieu que VirtualBox soit imposé :

VPS infonuagiques

De vrais serveurs Ă  l'heure (Linode), mĂȘme rĂ©gion, clĂ©s SSH, pare-feu (2377, 7946, 4789 entre noeuds). Le plus authentique.

VM VirtualBox

La référence : cloner UbuntuServerAlpha en DockerAlpha (2 Go, 12 Go). Hors ligne, gratuit, plan d'adressage historique.

Conteneurs DinD

Docker dans Docker : léger, rapide, hors ligne. Idéal si votre poste manque de mémoire pour 5 machines virtuelles.

Le matériel

Environnement informatique


Les rĂšgles du jeu

Le processus de travail

Les rĂšgles du jeu

Remise et Examen pratique

versionnement dockerfile ligne par ligne dans l'ordre de developpement
L'ordre n'est pas l'ordre des lignes (ex: lignes de test qui disparaissent)

La remise

L'examen pratique

⚠ Note de 0 % si on ne te voit pas travailler sur chaque labo et bien l'expliquer !
Travailler avec l'IA

Utilisation de l'IA

⚠ Note de 0 % si on ne te voit pas travailler sur chaque labo et bien l'expliquer !

Bonne utilisation

  • Demander des explications sur les concepts du cours.
  • Demander des exemples de scripts similaires.
  • Demander des explications d'exemples typiques.
  • Copier-coller Ă  l'IA des messages d'erreur pour aider Ă  rĂ©soudre des problĂšmes.

Mauvaise utilisation

  • Copier-coller de grandes sections de script dans son travail et tenter de l'utiliser tel quel.

    La bonne méthode : vous pouvez copier une seule ligne de configuration à la fois fournie par une IA, la tester, et faire un commit de chaque ligne.

Signes que tu utilises mal l'IA

Structure attendue

Architecture de remise

Votre dépÎt Git doit respecter scrupuleusement l'arborescence suivante :

📁 votre-depot-git/
├── 📄 README.md
├── 📁 docker/
│ ├── 📄 Dockerfile
│ └── 📄 README.md
├── 📁 compose/
│ ├── 📄 docker-compose.yml
│ └── 📄 README.md
└── 📁 swarm/
├── 📄 traefik.yml
├── 📄 wordpress-sticky.yml
└── 📄 README.md
Diaporama Laboratoire 1 Laboratoire 1 · Semaine 2 · 5 points

WordPress et MySQL sur un seul conteneur

Une instance selon votre choix d'infrastructure - VPS infonuagique (le plus authentique), VM VirtualBox ou conteneur DinD - avec 2 Go de mĂ©moire et 12 Go de disque, oĂč la boutique de Cornucopia renaĂźt dans une image LAMP maison, construite depuis l'image officielle PHP. Quatre Ă©tapes : diaporama du laboratoire et son guide pas-Ă -pas.

đŸ§ș TĂ©lĂ©charger la sauvegarde Cornucopia (code + SQL + README)
Laboratoire 1 · Le dessin

Un seul conteneur : l'architecture Ă  monter

Dessin du laboratoire 1 : une instance, un conteneur LAMP-WordPress, le port 8080 vers 80, un répertoire partagé mysql
Diaporama Laboratoire 2 Laboratoire 2 · Semaine 3 · 10 points

WordPress avec un conteneur par service

Un service HTTP et un service MySQL décrits dans un docker-compose.yml (ports 8082, phpMyAdmin en 8083, répertoires partagés, réseau).

Laboratoire 2 · Le dessin

Un conteneur par service : l'architecture Ă  monter

Dessin du laboratoire 2 : les services wordpress, db et phpmyadmin sur myNetwork, les ports 8082 et 8083, les répertoires partagés fichiers-wordpress et database
Diaporama Laboratoire 3 Laboratoire 3 · Semaine 4 · 10 points

WordPress sur un Docker Swarm

Cinq noeuds selon votre infrastructure (swarm-node01 à 05; référence : 192.168.56.10 à .50). Cluster init et join, réseau overlay, proxy inverse Traefik, WordPress répliqué, visualiseur.

Respectez le tutoriel à la lettre, surtout l'adressage. Premier déploiement long : les images se téléchargent sur chaque noeud.

Laboratoire 3 · Le dessin

WordPress sur un Docker Swarm : l'architecture Ă  monter

Dessin du laboratoire 3 : cinq noeuds swarm-node01 à 05, trois gestionnaires, le réseau net, loadbalancer, db, wordpress en trois répliques et viz, les répertoires partagés
Expérimentation · Facultatif · 1 point bonus

Conteneurs from scratch

AprÚs avoir monté une prison à la main, docker run ne sera plus jamais mystérieux : vous saurez exactement le service qu'il vous rend.

Semaine 5

L'examen pratique, et comment se joue la note

5 points

Un seul conteneur

10 points

Un conteneur par service

10 points

Docker Swarm

1 point bonus

From scratch, en plus du total

Total : 25 points · 25 % de la session, plus le point bonus from scratch. L'énoncé complet, version détaillée, reste en ligne : la version web fait foi.