services:
  tts-voice-creator-clone-and-design-2:
    build:
      context: .
      dockerfile: Dockerfile
    image: tts-voice-creator-clone-and-design-2:latest
    container_name: tts-voice-creator-clone-and-design-2
    restart: unless-stopped

    ports:
      - "7890:7890"

    # Give the app user access to the Docker socket (GID of docker group on host)
    group_add:
      - "${DOCKER_GID:-988}"

    volumes:
      - ${VOICE_HOST_DIR:-./voices}:/voices:rw
      - tts-voice-creator-clone-and-design-2:/home/app/.config/tts-voice-creator
      - /var/run/docker.sock:/var/run/docker.sock:ro
      - ./static:/app/static:ro
      - ./server.py:/app/server.py:ro

    environment:
      - PYTHONUNBUFFERED=1
      - VOICES_DIR=/voices
      - OUTPUT_DIR=/voices/active_voices
      # Containers that load WAV files and need a restart after voice changes
      - TTS_CONTAINER_NAMES=faster-qwen3-tts-voiceclone,faster-qwen3-tts-streaming
      - VOICE_DESIGN_MODEL=Qwen3-TTS-12Hz-1.7B-VoiceDesign

    extra_hosts:
      - "host.docker.internal:host-gateway"

    networks:
      - dgx_net

volumes:
  tts-voice-creator-clone-and-design-2:

networks:
  dgx_net:
    external: true
