This guide walks you through deploying Smallest Self-Host Text-to-Speech (TTS) using Docker Compose. You’ll have a fully functional text-to-speech service running in under 15 minutes.
Ensure you’ve completed all prerequisites before starting this guide.
Create a directory for your deployment:
Authenticate with the Smallest container registry using credentials provided by support:
Enter your username and password when prompted.
Save your credentials securely. You’ll need them if you restart or redeploy the containers.
Create a .env file with your license key:
Replace your-license-key-here with the actual license key provided by Smallest.ai.
Never commit your .env file to version control. Add it to .gitignore if using git.
Create a docker-compose.yml file for TTS deployment:
Launch all services with Docker Compose:
First startup will take 3-5 minutes as the system:
Models are embedded in the container - no separate download needed.
Watch the logs to monitor startup progress:
Look for these success indicators:
Press Ctrl+C to stop following logs.
Check that all containers are running:
Expected output:
Test the API with a sample request:
Or use the health check endpoint first:
Expected response: {"status": "healthy"}
Error: could not select device driver "nvidia"
Solution:
If this fails, reinstall NVIDIA Container Toolkit.
Error: License validation failed
Solution:
.env is correctError: port is already allocated
Solution: Check what’s using the port:
Either stop the conflicting service or change the port in docker-compose.yml
Examples:
Pull latest images and restart:
Stop and remove all containers:
Remove containers and volumes:
Using -v flag will delete all data. Models will need to be re-downloaded on next startup.