Files
smart-city-digital-twin-mar…/redpanda/docker-compose.yml
Eric FELIXINE 8642ed7001 feat: Add Redpanda Console, Pulsar Distribution Service, and Grafana Dashboards
- Add Redpanda Console service (port 28080, Traefik integration)
- Add Pulsar Distribution Service (Pulsar -> Brokers)
- Create Grafana dashboards for Redpanda, Pulsar, and Smart City Ingestion
- Configure Prometheus targets for Pulsar and Redpanda metrics
- Fix FROST URL in distribution service
- Create session resume for 2026-05-05
2026-05-05 13:49:00 -04:00

88 lines
2.5 KiB
YAML

# Redpanda (Kafka-compatible) — Single Node for Smart City Digital Twin Martinique
# Usage: docker compose -p smart-city -f redpanda/docker-compose.yml up -d
# Ports: 19092=Kafka (host), 9644=Admin API, 18083=Schema Registry
services:
redpanda:
image: redpandadata/redpanda:v24.3.14
container_name: smart-city-redpanda
command:
- redpanda
- start
- --overprovisioned
- --smp
- "1"
- --memory
- 1G
- --reserve-memory
- 0M
- --node-id
- "0"
- --check=false
- --kafka-addr
- internal://0.0.0.0:9092
- --advertise-kafka-addr
- internal://smart-city-redpanda:9092
- --rpc-addr
- internal://0.0.0.0:33145
- --advertise-rpc-addr
- smart-city-redpanda:33145
ports:
- "19092:9092"
- "19644:9644"
volumes:
- redpanda-data:/var/lib/redpanda/data
networks:
- traefik-public
- smartcity-shared
healthcheck:
test: ["CMD-SHELL", "curl -sf http://localhost:9644/v1/status/ready 2>/dev/null || exit 1"]
interval: 30s
timeout: 10s
retries: 10
start_period: 60s
labels:
- "traefik.enable=true"
- "traefik.http.routers.redpanda.rule=Host(`redpanda.digitribe.fr`)"
- "traefik.http.routers.redpanda.entrypoints=websecure"
- "traefik.http.routers.redpanda.tls=true"
- "traefik.http.services.redpanda.loadbalancer.server.port=9644"
# Redpanda Console - Web UI for Redpanda/Kafka
redpanda-console:
image: docker.redpanda.com/redpandadata/console:v2.5.0
container_name: smart-city-redpanda-console
restart: unless-stopped
depends_on:
- redpanda
environment:
- KAFKA_BROKERS=smart-city-redpanda:9092
- CONFIG_FILE=console.yaml
volumes:
- ./console.yaml:/console.yaml:ro
networks:
- traefik-public
- smartcity-shared
ports:
- "28080:8080"
labels:
- "traefik.enable=true"
- "traefik.http.routers.redpanda-console.rule=Host(`redpanda-console.digitribe.fr`)"
- "traefik.http.routers.redpanda-console.entrypoints=websecure"
- "traefik.http.routers.redpanda-console.tls=true"
- "traefik.http.services.redpanda-console.loadbalancer.server.port=8080"
healthcheck:
test: ["CMD-SHELL", "curl -sf http://localhost:8080 || exit 1"]
interval: 30s
timeout: 10s
retries: 5
start_period: 30s
networks:
traefik-public:
external: true
smartcity-shared:
external: true
volumes:
redpanda-data: