# Smart City Digital Twin Martinique — Main Docker Compose # Usage: docker compose -p smart-city up -d # This file defines the simulator and includes other services version: '3.8' networks: smartcity-shared: external: true traefik-public: external: true openremote_default: external: true services: # Smart City Simulator simulator: build: . container_name: smart-city-simulator tty: true stdin_open: true networks: - smartcity-shared - traefik-public - openremote_default environment: # MQTT Brokers - ALL enabled - ENABLE_EMQX=1 - ENABLE_MOSQUITTO=1 - ENABLE_BUNKER=1 - BUNKERM_HOST=bunkerm_bunkerm_1 - BUNKERM_PORT=1900 # Context Brokers (DESACTIVE - tout passe par les IoT Agents via MQTT) - ENABLE_ORION=false - ENABLE_STELLIO=false - ENABLE_FROST=false # Databases - ENABLE_INFLUX=true - INFLUX_URL=http://smart-city-influxdb:8086 # OpenRemote - ENABLE_OPENREMOTE=1 - OR_URL=http://openremote_manager_1:8080 - OR_REALM=master - OR_TOKEN_REALM=master - OR_ADMIN_USER=admin - OR_ADMIN_PASS=Digitribe972 - OR_CLIENT_SECRET=0oQjzTfiEELYmj5jFwT4iIuWUDtQDvVa # Pulsar (Disabled for demo stability) - ENABLE_PULSAR=false # Redpanda (Disabled) - ENABLE_REDPANDA=false - REDPANDA_BROKERS=smart-city-redpanda:9092 # Simulation settings - INTERVAL=5 - LOG_LEVEL=INFO restart: unless-stopped labels: - "traefik.enable=false" # IoT Agent BunkerM - traduce les msgs MQTT bunker/bunker vers Orion-LD iot-agent-bunkerm: image: fiware/iotagent-json:latest container_name: smart-city-iot-agent-bunkerm networks: - smartcity-shared ports: - "4043:4041" environment: - IOTA_CB_HOST=smart-city-orion-ld - IOTA_CB_PORT=1026 - IOTA_CB_NGSI_VERSION=v2 - IOTA_REGISTRY_TYPE=memory - IOTA_DEFAULT_APIKEY=smartcity-api-key - IOTA_MQTT_USERNAME=bunker - IOTA_MQTT_PASSWORD=bunker - IOTA_MQTT_HOST=bunkerm_bunkerm_1 - IOTA_MQTT_PORT=1900 - IOTA_LOG_LEVEL=DEBUG restart: unless-stopped # InfluxDB (defined in docker-compose.influxdb.yml) # Run with: docker compose -f docker-compose.yml -f docker-compose.influxdb.yml up -d # Grafana (defined in docker-compose.grafana.yml) # Run with: docker compose -f docker-compose.yml -f docker-compose.grafana.yml up -d # Pulsar (defined in pulsar/docker-compose.yml) # Run with: docker compose -f docker-compose.yml -f pulsar/docker-compose.yml up -d # Redpanda (defined in redpanda/docker-compose.yml) # Run with: docker compose -f docker-compose.yml -f redpanda/docker-compose.yml up -d