ECOLE SUPERIEURE DE TECHNOLOGIE ET DE MANAGEMENT
Licence 3
Réseaux et télécommunications
Cloud et virtualisation
RAPPORT DE PROJET : PLATEFORME HELPDESK MULTI-SERVICES (DOCKER)
Groupe6
Participants :
Jadis soussou madrid
Tahir dongui bostigui
Chargée du cours :
Dr keba Gueye
Année scolaire 2025-2026
SOMMAIRE
INTRODUCTION………………………………………………………………………………………
[Link] TECHNIQUE ET SERVICES…………………………………………………
2.1 Service HTTP (Application Flask) …………………………………………………………………
2.2 Service Base de Données (MySQL)……………………………………………………………….
2.3 Service DNS (Bind9) ………………………………………………………………………………
2.4 Service Messagerie (SMTP MailHog) ………………………………………………………………
[Link] MÉTIER ET CRUD……………………………………………………………
3.1 Interface Client (Création de tickets) ……………………………………………………………….
3.2 Interface Administrateur (Gestion sécurisée) ………………………………………………………
INSTALLATION ET DÉPLOIEMENT……………………………………………………
CONCLUSION………………………………………………………………………………
INTRODUCTION
Ce projet consiste en la mise en place d'une plateforme de support technique (Helpdesk)
entièrement conteneurisée. L'objectif est de démontrer la capacité à orchestrer plusieurs
micro-services interconnectés pour répondre à un besoin métier réel : la gestion de tickets IT.
2. ARCHITECTURE TECHNIQUE ET SERVICES
L'architecture du projet repose sur une approche modulaire. Au lieu d'avoir un bloc unique,
l'application est découpée en entités autonomes qui collaborent via un réseau virtuel interne.
2.1 Le rôle de Docker
Docker est la pierre angulaire de cette infrastructure. Son rôle est triple :
Isolation : Chaque service fonctionne dans son propre environnement (conteneur) sans
interférer avec les autres.
Portabilité : Le projet contient toutes ses dépendances. Il peut être déployé sur n'importe quel
système (Windows, Linux, Cloud) sans installation préalable de Python ou MySQL.
Standardisation : Grâce au fichier [Link], le déploiement de l'infrastructure
complète est automatisé et reproductible en une seule commande.
Légende : Orchestration des 4 micro-services par Docker.
2.2 Service HTTP (Application Flask)
Le cœur de la plateforme est une application web développée avec le
Framework Flask (Python 3.11).
Rôle : Gérer les requêtes des utilisateurs, traiter les formulaires et assurer la liaison
avec la base de données.
2.3 Service Base de Données (MySQL)
La persistance des données est assurée par un serveur MySQL 8.0.
Volume : Les données sont stockées de manière à survivre au redémarrage des
conteneurs.
Initialisation : Un script [Link] automatique configure la structure au premier
lancement.
Connectivité : L'application utilise le pilote PyMySQL avec le
support cryptography pour garantir une authentification sécurisée conforme aux
standards
2.4 Service DNS (Bind9)
Ce service utilise Bind9, la référence mondiale pour les serveurs DNS sous Linux.
Utilité : Il simule la résolution de noms de domaine au sein du réseau local du projet.
Configuration : Un fichier [Link] définit les zones autorisées, permettant de
transformer l'adresse IP du serveur en un nom compréhensible (ex: [Link]).
2.5 Service Messagerie (SMTP MailHog)
Pour la gestion des flux de courriels, nous avons intégré MailHog.
Fonctionnement : Il agit comme un "piège à mails" SMTP. Toutes les notifications
envoyées par la plateforme sont interceptées et consultables via une interface web
dédiée.
Légende : Visualisation des flux de messagerie interceptés par le service SMTP.
3. LOGIQUE MÉTIER ET CRUD
Le projet implémente un cycle CRUD (Create, Read, Update, Delete) complet, adapté aux
besoins d'un Helpdesk IT.
3.1 Côté Client : Création et Suivi
L'accès client est conçu pour être le plus fluide possible (User Experience) :
Accès libre : Aucune authentification n'est requise pour soumettre un problème,
favorisant la rapidité de signalement.
Action (CREATE) : Chaque soumission génère une nouvelle entrée en base de
données avec le statut par défaut "Ouvert".
3.2 Côté Administrateur : Gestion et Clôture
L'espace administrateur est une zone restreinte :
Authentification : Un formulaire de connexion dédié vérifie les identifiants stockés.
Tableau de Bord (READ) : Une vue d'ensemble affiche tous les tickets triés par date
de réception.
Traitement (UPDATE) : L'administrateur a la possibilité de modifier le statut des
tickets (passage de "Ouvert" à "Clos") une fois l'incident résolu.
Légende : Liste des tickets avec options de gestion et de changement de statut.
CONCLUSION
Ce projet de Helpdesk multi-services démontre l'efficacité de l'architecture micro-services. En
séparant les responsabilités (HTTP, DB, DNS, SMTP), nous obtenons une plateforme stable,
facile à maintenir et à faire évoluer. La combinaison de Flask pour la légèreté et de Docker
pour la portabilité répond parfaitement aux exigences professionnelles actuelles.