- Nettoyage: suppression conteneurs TTS, anciens Chirpstack, exited/excess - BunkerM recréé et ajouté à traefik-public (mosquitto2.digitribe.fr) - Config Traefik mise à jour: 3 fichiers mosquitto2 → bunkerm-bunkerm-1 - AgentLink MQTT désactivé sur 25 assets (master+smartcity) - REST OpenRemote activé dans simulateur (location GeoJSONPoint incluse) - ChirpStack: nouveau docker-compose (postgres, redis, mosquitto, chirpstack) - Session state documenté dans SESSION_STATE_2026-05-13.md
123 lines
3.9 KiB
YAML
123 lines
3.9 KiB
YAML
version: "3.8"
|
|
|
|
# =============================================================================
|
|
# ChirpStack LoRaWAN Network Server — Smart City Digital Twin
|
|
# =============================================================================
|
|
# Image officielle chirpstack/chirpstack:latest
|
|
# Credentials par défaut: admin/admin
|
|
# =============================================================================
|
|
|
|
services:
|
|
chirpstack:
|
|
image: chirpstack/chirpstack:latest
|
|
command: -c /etc/chirpstack
|
|
restart: unless-stopped
|
|
volumes:
|
|
- ./configuration/chirpstack:/etc/chirpstack:ro
|
|
depends_on:
|
|
- postgres
|
|
- mosquitto
|
|
- redis
|
|
environment:
|
|
- MQTT_BROKER_HOST=mosquitto
|
|
- REDIS_HOST=redis
|
|
- POSTGRESQL_HOST=postgres
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.http.routers.chirpstack.rule=Host(`chirpstack.digitribe.fr`)"
|
|
- "traefik.http.routers.chirpstack.entrypoints=websecure"
|
|
- "traefik.http.routers.chirpstack.tls.certresolver=letsencrypt"
|
|
- "traefik.http.services.chirpstack.loadbalancer.server.port=8080"
|
|
networks:
|
|
- traefik-public
|
|
- smartcity-shared
|
|
|
|
chirpstack-gateway-bridge:
|
|
image: chirpstack/chirpstack-gateway-bridge:4
|
|
restart: unless-stopped
|
|
ports:
|
|
- "1700:1700/udp"
|
|
volumes:
|
|
- ./configuration/chirpstack-gateway-bridge:/etc/chirpstack-gateway-bridge:ro
|
|
environment:
|
|
- INTEGRATION__MQTT__EVENT_TOPIC_TEMPLATE=eu868/gateway/{{ .GatewayID }}/event/{{ .EventType }}
|
|
- INTEGRATION__MQTT__STATE_TOPIC_TEMPLATE=eu868/gateway/{{ .GatewayID }}/state/{{ .StateType }}
|
|
- INTEGRATION__MQTT__COMMAND_TOPIC_TEMPLATE=eu868/gateway/{{ .GatewayID }}/command/#
|
|
depends_on:
|
|
- mosquitto
|
|
networks:
|
|
- smartcity-shared
|
|
|
|
chirpstack-gateway-bridge-basicstation:
|
|
image: chirpstack/chirpstack-gateway-bridge:4
|
|
restart: unless-stopped
|
|
command: -c /etc/chirpstack-gateway-bridge/chirpstack-gateway-bridge-basicstation-eu868.toml
|
|
volumes:
|
|
- ./configuration/chirpstack-gateway-bridge:/etc/chirpstack-gateway-bridge:ro
|
|
depends_on:
|
|
- mosquitto
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.http.routers.chirpstack-ws.rule=Host(`chirpstack-ws.digitribe.fr`)"
|
|
- "traefik.http.routers.chirpstack-ws.entrypoints=websecure"
|
|
- "traefik.http.routers.chirpstack-ws.tls.certresolver=letsencrypt"
|
|
- "traefik.http.services.chirpstack-ws.loadbalancer.server.port=3001"
|
|
networks:
|
|
- traefik-public
|
|
- smartcity-shared
|
|
|
|
chirpstack-rest-api:
|
|
image: chirpstack/chirpstack-rest-api:4
|
|
restart: unless-stopped
|
|
command: --server chirpstack:8080 --bind 0.0.0.0:8090 --insecure
|
|
depends_on:
|
|
- chirpstack
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.http.routers.chirpstack-api.rule=Host(`chirpstack-api.digitribe.fr`)"
|
|
- "traefik.http.routers.chirpstack-api.entrypoints=websecure"
|
|
- "traefik.http.routers.chirpstack-api.tls.certresolver=letsencrypt"
|
|
- "traefik.http.services.chirpstack-api.loadbalancer.server.port=8090"
|
|
networks:
|
|
- traefik-public
|
|
- smartcity-shared
|
|
|
|
postgres:
|
|
image: postgres:14-alpine
|
|
restart: unless-stopped
|
|
volumes:
|
|
- chirpstack-postgresqldata:/var/lib/postgresql/data
|
|
environment:
|
|
- POSTGRES_USER=chirpstack
|
|
- POSTGRES_PASSWORD=chirpstack
|
|
- POSTGRES_DB=chirpstack
|
|
networks:
|
|
- smartcity-shared
|
|
|
|
redis:
|
|
image: redis:7-alpine
|
|
restart: unless-stopped
|
|
command: redis-server --save 300 1 --save 60 100 --appendonly no
|
|
volumes:
|
|
- chirpstack-redisdata:/data
|
|
networks:
|
|
- smartcity-shared
|
|
|
|
mosquitto:
|
|
image: eclipse-mosquitto:2
|
|
restart: unless-stopped
|
|
volumes:
|
|
- ./configuration/mosquitto/config/:/mosquitto/config/:ro
|
|
networks:
|
|
- smartcity-shared
|
|
|
|
volumes:
|
|
chirpstack-postgresqldata:
|
|
chirpstack-redisdata:
|
|
|
|
networks:
|
|
traefik-public:
|
|
external: true
|
|
smartcity-shared:
|
|
external: true
|