Quick Start
Services
The Docker Compose setup includes:
docker-compose.yml
The actual docker-compose.yml is located at docker/docker-compose.yml:
Environment Variables
Create a .env file in the repository root using .env.docker.example as a template:
See docker/README.md for complete documentation.
Commands
Production Considerations
The default docker-compose.yml is for development. For production:
Security
- Change default database password
- Use secrets management for API keys
- Enable TLS/HTTPS
- Set up proper network isolation
Persistence
- Use external PostgreSQL for production
- Set up database backups
- Consider Redis for caching
Scaling
Health Checks
Troubleshooting
Environment Variables Not Loading
If you experience issues with environment variables (especially long API keys) appearing truncated in containers:
Problem: Docker Compose may not correctly parse long API keys from the .env file directly, causing errors like “UPSTREAM_API_KEY or LLM_API_KEY environment variable is required”.
Solution: Source the .env file and export variables before running docker compose:
Verification: Check that the API key is loaded correctly:
You should see the correct length (e.g., 164 characters for OpenAI keys), not just 6.
Database Migrations Not Running
If the server fails to start with migration errors:
Container Build Failures
If you encounter module resolution errors during build:
For more troubleshooting help, see docker/README.md.