Un tableau de bord web simple développé en Python Flask permettant de surveiller en temps réel l’état d'un serveur UNIX/Linux :
- RAM (totale, utilisée, disponible, statut)
- Disque dur (total, utilisé, libre, statut)
- Processeur (utilisation, disponible, statut)
Le tout s’affiche dans une interface web claire et automatique se réactualisant toutes les 5 secondes.
Compatible avec un déploiement local ou sous Docker / Docker Compose.
Créer une application web légère permettant de visualiser rapidement :
- L’usage des ressources systèmes (CPU, RAM, disque),
- L’état général du serveur (normal / saturé / plein),
- Et l’adresse IP du serveur pour l’identification du nœud dans un réseau local ou distant.
- Python 3.10+
- pip (gestionnaire de paquets)
- docker et docker-compose
- Modules requis :
pip install flask psutil
🐳 Installation Docker
- Docker Engine ≥ 20.x
- Docker Compose ≥ v2.x
system-dashboard/
├── app.py # Application Flask principale
├── Dockerfile # Image Docker de l'application
├── docker-compose.yml # Lancement orchestré via Docker Compose
├── README.md # Documentation du projet (vous êtes ici)
└── requirements.txt # (Optionnel) Liste des dépendances
- Cloner le dépôt :
git clone https://github.com/soniarimamy/unix_server_monitoring.git
- Installer les dépendances :
cd unix_server_monitoring
👉 [optional]: python3.11 -m virtualenv env
👉 [optional] : source env/bin/activate
pip install -r requirements.txt
- Lancer l’application :
python app.py
- Accéder à l’application :
- Depuis votre machine : http://localhost:5000
- Depuis le réseau local : http://10.10.1.102:5000 (adresse IP du serveur)
- ️⃣ Build et lancement
docker compose up --build -d
- ️⃣ Vérifier que le conteneur est actif
docker ps
- Vous devriez voir quelque chose comme :
CONTAINER ID IMAGE COMMAND PORTS NAMES
a1b2c3d4e5f6 system-dashboard "python app.py" 0.0.0.0:5000->5000/tcp unix_server_monitoring
- ️⃣ Tester dans votre navigateur :
Vous pouvez vérifier que l’application fonctionne à l’aide de curl :
curl http://localhost:5000
Si tout est correct, vous verrez le code HTML de la page du dashboard.
Tapez l'url suivant dans votre navigateur web
http://localhost:5000
- Rochel SONIARIMAMY
- 📍 Madagascar
- 📧 rochel.soniarimamy@gmail.com
- 🧠 Projet éducatif : Surveillance serveur unix/linux avec Flask & Docker
Ce projet est distribué sous la licence MIT — libre d’utilisation, de modification et de distribution.
MIT License © 2025 — Rochel SONIARIMAMY