Prerequisites
- Docker Engine 20.10+
- Docker Compose 2.0+
- 4GB RAM minimum
- 20GB disk space
Architecture
The docker-compose setup includes:| Service | Port | Purpose |
|---|---|---|
| app | 8010 | Main API & WebSocket server |
| tele_mcp | 8100 | Telegram MCP integration |
| gmail_mcp | 8101 | Gmail MCP integration |
| whatsapp_mcp | 8102 | WhatsApp MCP integration |
| livekit | 7880, 7881 | LiveKit media server |
| scheduler | - | Background job scheduler |
Setup Steps
1. Prepare Environment
.env file with all required API keys and credentials.
2. Build Base Image
3. Build All Services
4. Start Services
5. Verify Deployment
Service Details
Main App Service
PORT: Application port (default: 8010)Environment: Set toproductionfor production useGEMINI_API_KEY: Google Gemini API keyOPENAI_API_KEY: OpenAI API keySUPABASE_URL: Supabase project URLSUPABASE_KEY: Supabase API key
MCP Services
Telegram MCP (Port 8100)
Handles Telegram integration:- Message forwarding
- User management
- Async processing
Gmail MCP (Port 8101)
Manages Gmail operations:- Email sending/receiving
- Attachment handling
- OAuth authentication
WhatsApp MCP (Port 8102)
WhatsApp integration:- Message delivery
- Media handling
- Group management
Scaling
Horizontal Scaling
Resource Limits
Editdocker-compose.yml:
Networking
All services communicate via the internal Docker networkcall-agent-network. To expose services externally:
Data Persistence
Volumes
Health Checks
Each service includes health checks:Troubleshooting
Port Conflicts
If ports are already in use, modify port mappings indocker-compose.yml:
Container Won’t Start
Memory Issues
Network Issues
Production Deployment
Environment Setup
SSL/TLS
Add reverse proxy (nginx):Database Backups
Monitoring
Logs
Metrics
Stopping and Cleanup
Next Steps
Configuration
Learn about all configuration options.