services:

  # --- Simulation web (recommandé) ---
  # Sert les vrais fichiers data/ + simule tous les /api/* en mémoire
  # Lancement : docker compose up sim
  sim:
    image: python:3.11-slim
    working_dir: /emulator
    command: python3 sim.py
    ports:
      - "8087:8080"
    volumes:
      - .:/emulator:ro
      - ../data:/data:ro
    environment:
      - SIM_PORT=8080
    # Lancement standalone sans Docker : cd emulator && python3 sim.py

  # --- Émulateur QEMU (boot séquence + terminal série) ---
  # Lancement : docker compose up emulator
  emulator:
    build: .
    ports:
      - "10080:10080"
      - "8888:8888"
    volumes:
      # Binaires compilés (copier avec : cp ../.pio/build/kc868_a2/*.bin firmware/)
      - ./firmware:/firmware:ro
    environment:
      - FIRMWARE_DIR=/firmware
    stdin_open: true
    tty: true
