Docker Compose swarm/prod deployment for speech services #400

Closed
opened 2026-02-15 07:35:06 +00:00 by jason.woltje · 1 comment
Owner

Description

Create production-ready Docker Compose configuration for speech services in Docker Swarm with Traefik integration.

Design

  • Separate from main Stack deployment (like Matrix — shared infrastructure)
  • Sample file: docker/docker-compose.sample.speech.yml
  • Portainer-compatible with environment variable substitution
  • Traefik labels for routing

Services

  1. Speaches (STT + basic TTS) — always deployed
  2. Kokoro-FastAPI (default TTS) — always deployed
  3. Chatterbox (premium TTS) — optional

Environment Variables

  • STT_DOMAIN=stt.example.com
  • TTS_DOMAIN=tts.example.com
  • WHISPER_MODEL=Systran/faster-whisper-large-v3-turbo
  • TRAEFIK_ENTRYPOINT=websecure
  • TRAEFIK_CERTRESOLVER=letsencrypt
  • TRAEFIK_DOCKER_NETWORK=traefik-public

Acceptance Criteria

  • docker/docker-compose.sample.speech.yml created
  • Traefik labels matching Stack conventions
  • Environment variable documentation in header comments
  • Health checks for all services
  • Volume persistence for models
  • GPU reservation for Chatterbox
## Description Create production-ready Docker Compose configuration for speech services in Docker Swarm with Traefik integration. ## Design - Separate from main Stack deployment (like Matrix — shared infrastructure) - Sample file: docker/docker-compose.sample.speech.yml - Portainer-compatible with environment variable substitution - Traefik labels for routing ## Services 1. Speaches (STT + basic TTS) — always deployed 2. Kokoro-FastAPI (default TTS) — always deployed 3. Chatterbox (premium TTS) — optional ## Environment Variables - STT_DOMAIN=stt.example.com - TTS_DOMAIN=tts.example.com - WHISPER_MODEL=Systran/faster-whisper-large-v3-turbo - TRAEFIK_ENTRYPOINT=websecure - TRAEFIK_CERTRESOLVER=letsencrypt - TRAEFIK_DOCKER_NETWORK=traefik-public ## Acceptance Criteria - [ ] docker/docker-compose.sample.speech.yml created - [ ] Traefik labels matching Stack conventions - [ ] Environment variable documentation in header comments - [ ] Health checks for all services - [ ] Volume persistence for models - [ ] GPU reservation for Chatterbox
jason.woltje added this to the M13-SpeechServices (0.0.13) milestone 2026-02-15 07:35:06 +00:00
Author
Owner

Completed as part of M13-SpeechServices milestone on branch feature/m13-speech-services. SP-DOC-002: Docker Compose swarm/prod deployment (commit b3d6d73). All quality gates passed (lint, typecheck, tests, security).

Completed as part of M13-SpeechServices milestone on branch feature/m13-speech-services. SP-DOC-002: Docker Compose swarm/prod deployment (commit b3d6d73). All quality gates passed (lint, typecheck, tests, security).
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: mosaic/stack#400