đ Projet Final : Architecture Micro-Services & DĂ©ploiement
1. Contexte & Objectifs
Vous ĂȘtes une Ă©quipe d’ingĂ©nieurs DevOps chargĂ©e de concevoir, conteneuriser et dĂ©ployer une solution web robuste. Le sujet est libre (site e-commerce, dashboard IoT, blog perso, outil de gestion de collection, etc.), mais l’architecture technique est imposĂ©e.
L’objectif n’est pas de coder l’application du siĂšcle, mais de construire l’infrastructure qui l’hĂ©berge de maniĂšre professionnelle.
2. Modalités de Rendu
-
Groupe : 1 Ă 3 personnes maximum.
-
Livrable : Un lien vers un dépÎt GitHub Public.
-
Date limite : [Insérer Date/Heure]
-
â ïž CRITĂRE ĂLIMINATOIRE :
-
Le fichier
README.mddoit ĂȘtre prĂ©sent Ă la racine. -
Il doit contenir clairement les Nom(s) et Prénom(s) de chaque membre du groupe en haut de page.
-
Sans ces informations, le projet est considĂ©rĂ© comme “Non Rendu” (0/20).
-
3. Spécifications Techniques (Le Cahier des Charges)
Votre dépÎt doit contenir un docker-compose.yml fonctionnel respectant les contraintes suivantes :
-
Services Web (Min. 2) :
- Au moins deux services applicatifs distincts (ex: un Frontend + une API, ou un WordPress + un Wiki, ou une App Custom + un outil de Chat).
-
Service de Données (Min. 1) :
- Une base de donnĂ©es (MySQL, Postgres, Mongo, Redis…) avec persistance des donnĂ©es (Volumes Docker).
-
Service de Gestion/Admin :
- Une interface pour gĂ©rer l’infra ou les donnĂ©es (ex: Portainer, Adminer, PhpMyAdmin, ou un dashboard de monitoring).
-
Reverse Proxy & Réseau :
-
Utilisation de Caddy (ou Traefik) comme point d’entrĂ©e unique.
-
Pas d’exposition directe des ports de BDD ou d’API sur internet.
-
-
Accessibilité Internet :
- Mise en place d’un tunnel Cloudflare (
cloudflared) pour rendre le projet accessible publiquement via HTTPS.
- Mise en place d’un tunnel Cloudflare (
-
Robustesse :
-
Politiques de redémarrage (
restart: alwaysouunless-stopped). -
Utilisation de
healthcheckest un plus.
-
4. Le Rapport (README.md)
Le code ne suffit pas. Votre README.md servira de rapport de projet. Il doit expliquer :
-
Ce que fait votre projet.
-
L’architecture technique (SchĂ©ma UML obligatoire).
-
Comment le lancer.
-
Votre méthodologie (Organisation, Outils).
-
Transparence IA : Une section dĂ©diĂ©e expliquant quels outils d’IA (ChatGPT, Copilot, Cursor…) vous avez utilisĂ©s, pour quelles tĂąches (gĂ©nĂ©ration de code, dĂ©bug, Ă©criture) et votre retour d’expĂ©rience dessus.