Students : DIALLO Samba & DIOP Mouhamed
EcoData Platform
Plateforme complète de collecte et visualisation de données environnementales avec architecture cloud-native.
Architecture
L’EcoData Platform est composée de plusieurs services orchestrés avec Kubernetes:
Backend
API FastAPI pour la gestion des données environnementales.
- Vue d’ensemble du Backend
- Application FastAPI principale
- Configuration de la base de données
- Modèles SQLAlchemy
- Schémas Pydantic
Frontend
Interface Streamlit pour la visualisation des données.
Infrastructure Kubernetes
Manifestes pour le déploiement sur Kubernetes.
- Déploiements Backend et Frontend
- StatefulSet PostgreSQL
- Services et Ingress
- Configurations et Secrets
Automatisation & CI/CD
Scripts et workflows pour l’automatisation complète du déploiement.
- CD GitHub Actions
- Script de déploiement automatique
- Télécharger ci-cd-ghcr.yml
- Télécharger deploy-from-ghcr.sh
Reverse Proxy & Load Balancing
Configuration Nginx pour le routing et load balancing.
Documentation
Fichiers Source
Tous les fichiers sources sont disponibles dans:
Technologies Utilisées
- Backend: FastAPI, SQLAlchemy, PostgreSQL
- Frontend: Streamlit, Plotly
- Infrastructure: Kubernetes, Docker, GitHub Actions
- Base de données: PostgreSQL avec StatefulSet
Déploiement
Local avec Docker Compose
docker-compose up -dProduction avec Kubernetes
kubectl apply -f k8s/Voir la documentation complète du projet pour plus de détails.