services: whisper-asr: build: . image: sport-era/whisper-asr:latest container_name: sport-era-whisper-asr restart: unless-stopped environment: ASR_MODEL: ${ASR_MODEL:-small} ASR_DEVICE: ${ASR_DEVICE:-cpu} ASR_COMPUTE_TYPE: ${ASR_COMPUTE_TYPE:-int8} ASR_LANGUAGE: ${ASR_LANGUAGE:-} ASR_BEAM_SIZE: ${ASR_BEAM_SIZE:-5} ASR_MAX_FILE_MB: ${ASR_MAX_FILE_MB:-10} ASR_API_TOKEN: ${ASR_API_TOKEN:-} ASR_MODEL_CACHE: /models ports: - "127.0.0.1:8791:8791" volumes: - whisper_asr_models:/models healthcheck: test: ["CMD", "python", "-c", "import urllib.request; urllib.request.urlopen('http://127.0.0.1:8791/health', timeout=3).read()"] interval: 30s timeout: 5s retries: 3 start_period: 60s volumes: whisper_asr_models: