← évolutif.projet.autos Énoncé officiel (diaporama)

Laboratoires
Application conteneurisée

Énoncé officiel : trois laboratoires Docker et une expérimentation pour emballer le site de la petite entreprise, du serveur artisanal à l'essaim.

25 % de la session Individuel Module 1 Du serveur artisanal à l'essaim Laboratoires semaines 2 à 4 Démonstration semaine 5 420-5A4-MT
Le scénario

La petite entreprise emballe son site

La petite entreprise vient de mettre son site en ligne : un WordPress installé à la main, hérité du cours de serveur. Il fonctionne, mais il vit sans armure sur sa machine : fragile, impossible à déplacer, impossible à cloner. Pendant que les visiteurs se multiplient, l'entreprise apprend le geste fondateur du métier : emballer l'application dans des conteneurs, la décrire dans une partition, puis la faire jouer par tout un essaim de machines.

Ces laboratoires suivent la même application à travers trois architectures : un seul conteneur, un conteneur par service, puis un essaim. La même application, de plus en plus solide.

Votre mission

La même application, trois architectures

1

WordPress et MySQL sur un seul conteneur

2

Un conteneur par service, avec Docker Compose

3

WordPress répliqué sur un Docker Swarm

+

Expérimentation : un conteneur from scratch

À chaque étape, la preuve vivante est la même : votre WordPress répond dans le navigateur de la machine hôte, avec un article illustré publié dedans.

Nouveau cette année

Vos instances, votre choix d'infrastructure

Chaque noeud de ces laboratoires est une instance. Vous choisissez le substrat qui la fournit, au lieu que VirtualBox soit imposé :

Machines virtuelles VirtualBox

La voie de référence : cloner UbuntuServerAlpha en DockerAlpha (Ubuntu Server, 2 Go de mémoire vive, 12 Go de disque) et y installer Docker et Docker Compose. Hors ligne et gratuit; le plan d'adressage historique s'applique tel quel.

Conteneurs DinD

Docker dans Docker : chaque noeud est un conteneur sur votre machine. Léger, rapide, gratuit, hors ligne. Idéal si votre poste manque de mémoire vive pour cinq machines virtuelles.

VPS infonuagiques

De vrais serveurs loués à l'heure (Linode), dans la même région, clés SSH et pare-feu obligatoires (ports de l'essaim 2377, 7946 et 4789 restreints à vos noeuds). Le plus authentique, pour quelques cents l'heure.

Option VPS : des instances qui dorment coûtent des sous. « Conserver ses instances » signifie alors : être capable de les recréer et de les reconfigurer en quelques minutes par script, grâce aux configurations gardées dans GitHub. À la démonstration, vous devez pouvoir relever l'ensemble rapidement, devant témoin. Détruisez vos instances en fin de séance.

Les règles du jeu

Ce qui est exigé, sans exception

Laboratoire 1 · Semaine 2

WordPress et MySQL sur un seul conteneur

4 points Tutoriel : diaporama et laboratoire de la semaine 2

Mettre en place, en fonction du matériel de cours, une instance (VirtualBox de référence : DockerAlpha, clone d'UbuntuServerAlpha avec Docker et Docker Compose, 2 Go de mémoire vive, 12 Go de disque) qui héberge WordPress et MySQL dans un seul conteneur :

Barème :

Laboratoire 2 · Semaine 3

WordPress avec un conteneur par service

10 points Docker Compose Tutoriel : diaporama et laboratoire de la semaine 3

Sur une instance aux mêmes caractéristiques, installer WordPress avec un conteneur par service : un service HTTP et un service MySQL, décrits dans un fichier docker-compose.yml (ports 8082 et 8083 pour phpMyAdmin, volumes de données, réseau interne).

Barème :

Laboratoire 3 · Semaine 4

WordPress sur un Docker Swarm

10 points 5 noeuds Tutoriel : diaporama et laboratoire de la semaine 4

Préparer cinq noeuds selon votre choix d'infrastructure, nommés swarm-node01 à swarm-node05. Référence VirtualBox : cinq clones de DockerAlpha (2 Go, 12 Go) avec les adresses 192.168.56.10, .20, .30, .40 et .50, les noms d'hôtes et le fichier hosts ajustés sur chaque machine. En DinD ou VPS : cinq noeuds équivalents, plan d'adressage documenté dans le README.md.

Barème (état affiché dans le visualiseur) :

Les instructions détaillées sont répétées dans le tutoriel : respectez-les à la lettre, surtout l'adressage. Le premier déploiement peut être long (téléchargement des images sur chaque noeud); les journaux vous disent où ça en est.

Expérimentation · En classe

Conteneurs from scratch

1 point Une période de 4 heures

C'est un laboratoire d'expérimentation : la présence en classe pour le réaliser sur une seule période de travail (4 heures) est évaluée seulement. Le fonctionnement correct final est souhaitable, mais pas nécessaire.

C'est l'occasion de voir ce que Docker fait pour vous : après avoir monté une prison à la main, docker run ne sera plus jamais magique.

Semaine 5

La démonstration

En classe, à la semaine 5, chaque étudiant :

Rappel : la démonstration est nécessaire à la correction. Une partie non démontrée n'est pas évaluée.

La grille

Récapitulatif des points

Laboratoire Points
1 · WordPress et MySQL sur un seul conteneur4
2 · WordPress avec un conteneur par service (Compose)10
3 · WordPress sur un Docker Swarm10
Expérimentation · Conteneurs from scratch1

Total : 25 points · 25 % de la session

Le consultant

L'IA dans ces laboratoires