services: kokoro-tts: image: git.sdgarren.com/scott/kokoro:main container_name: kokoro-tts restart: unless-stopped # ROCm GPU passthrough devices: - /dev/kfd:/dev/kfd - /dev/dri:/dev/dri group_add: - video - render ports: - "10300:10300" volumes: # Persist HuggingFace model/voice cache so downloads survive container restarts - ./hf_cache:/root/.cache/huggingface # Mount config so voices/settings can be changed without rebuilding - ./config.yaml:/app/config.yaml:ro environment: - HIP_VISIBLE_DEVICES=0 # gfx1031 (6700 XT) is not in the ROCm wheel's compiled arch list; override to gfx1030 - HSA_OVERRIDE_GFX_VERSION=10.3.0 healthcheck: test: - CMD - python3 - -c - | import socket s = socket.socket() s.settimeout(5) s.connect(('localhost', 10300)) s.close() interval: 30s timeout: 10s retries: 3 start_period: 60s