2.7 KiB
2.7 KiB
Smart City Digital Twin — Documentation Infrastructure
Dernière mise à jour : 2026-05-17 20:00
Architecture Géospatiale
Services déployés
| Service | URL | Statut | Credentials |
|---|---|---|---|
| GeoServer | https://geoserver.digitribe.fr | ✅ UP | admin / Digitribe972 |
| PostGIS dédié | postgis-smartcity:5432 | ✅ UP | smartcity / SmartCity972 |
| MapStore | https://mapstore.digitribe.fr | ✅ UP | - |
GeoServer
Workspace: Digitribe
- Data Store:
postgis-smartcity→ PostgreSQL/PostGIS dédié - Couche:
sensors— 55 capteurs IoT importés depuis OpenRemote - WMS/WFS: Activés via le plugin GeoMesa (à installer)
Données importées
55 capteurs IoT depuis OpenRemote (table openremote.asset, type IOTSensor) :
- Types : traffic, airquality, parking, noise, weather, light
- Coordonnées GPS : lat/lon (EPSG:4326)
- Table PostGIS :
public.sensors(id, name, type, location, attributes)
PostGIS dédié
- Conteneur: postgis-smartcity
- Image: postgis/postgis:15-3.4
- Port host: 5433
- Base: smartcity
- Schéma: public
- Table sensors: 55 lignes, index GIST sur location
MapStore
- URL: https://mapstore.digitribe.fr
- CORS: GeoServer ajouté
- Couche GeoServer: sensors accessible via WMS
Services Bloqués
OpenRemote Agents MQTT
- Problème: API REST retourne 403 malgré tous les tokens Keycloak
- Cause: OpenRemote a son propre système d'authorization indépendant
- Solution: Se connecter manuellement via un navigateur réel
Ditto Digital Twin
- Problème: MongoDB localhost hardcodé dans le JAR Ditto 3.8.12
- Cause: Les variables d'environnement MONGO_HOST ne sont pas reconnues
- Solution: Modifier le JAR ou utiliser un hostname localhost → MongoDB
Prometheus + Grafana
- Problème: Réseau interne inaccessible depuis le conteneur Prometheus
- Solution: Reconfigurer le réseau ou utiliser les endpoints exposés
GeoMesa + KeplerGL
- GeoMesa: Installation complexe (Maven, binaires pré-construits nécessaires)
- KeplerGL: Image Docker incomplète, build npm trop long
- Solution: Prévoir une session dédiée pour l'installation
Fichiers de configuration
docker-compose.postgis.yml— PostGIS dédiédocker-compose.kepler.yml— KeplerGL (non fonctionnel)docker-compose.ditto.yml— Ditto (MongoDB à corriger)traefik-config/dynamic/routes.yml— GeoServer ajouté au CORS MapStore
Prochaines étapes
- GeoMesa : télécharger les binaires pré-construits (geomesa-gt-postgis)
- KeplerGL : build Docker multi-stage ou image officielle
- OpenRemote : connexion manuelle via navigateur réel
- Ditto : corriger la config MongoDB