German TTS in a Docker container, powered by Kokoro and finetuned on the Thorsten-Voice dataset.
617
German Text-to-Speech in a Docker container, powered by Kokoro-82M and fine-tuned on the Thorsten-Voice dataset.
Send a text via HTTP and get a WAV audio file back. That's it. Kokoro-82M is a compact (82M parameter) model that runs comfortably on CPU, in real time or faster — no GPU required.
docker run -p 8000:8000 \
-v kokoro_cache:/data/hf-cache \
thorstenvoice/kokoro-tts
First start: the model is downloaded automatically from Hugging Face (a few hundred MB). Subsequent starts are fast since the model is cached in the volume.
Once you see Modell geladen und einsatzbereit. in the logs, the server is ready.
curl -X POST http://localhost:8000/tts \
-H "Content-Type: application/json" \
-d '{"text": "Hallo, ich bin Thorsten. Schön, dass du da bist."}' \
--output thorsten.wav
That's all — thorsten.wav contains the synthesized speech.
Adjust speaking speed (must be greater than 0.0, up to 2.0; default 1.0):
curl -X POST http://localhost:8000/tts \
-H "Content-Type: application/json" \
-d '{"text": "Das hier wird etwas langsamer gesprochen.", "speed": 0.85}' \
--output output.wav
Check if the server is running:
curl http://localhost:8000/health
# {"status":"ok","repo_id":"Thorsten-Voice/Kokoro","epoch":"5","device":"cpu"}
Choose a different training checkpoint (epochs 1–10, default is epoch 5):
docker run -p 8000:8000 \
-e KOKORO_EPOCH=10 \
-v kokoro_cache:/data/hf-cache \
thorstenvoice/kokoro-tts
Create a docker-compose.yml:
services:
thorsten-kokoro-tts:
image: thorstenvoice/kokoro-tts:latest
container_name: thorsten-kokoro-tts
ports:
- "8000:8000"
environment:
- KOKORO_EPOCH=5
volumes:
- kokoro_cache:/data/hf-cache
restart: unless-stopped
volumes:
kokoro_cache:
Then:
docker compose up -d
This image is published as a multi-arch build for linux/amd64 and linux/arm64 — it runs natively on Linux, Windows (via Docker Desktop/WSL2), and Mac (Intel and Apple Silicon), CPU-only.
This container uses the Thorsten-Voice/Kokoro model, a German fine-tune of hexgrad/Kokoro-82M, trained using the kikiri-tts recipe by semidark on the Thorsten-Voice dataset (CC0).
Content type
Image
Digest
sha256:816385bad…
Size
475.3 MB
Last updated
2 months ago
docker pull thorstenvoice/kokoro-tts