Skip to main content

Prerequisites

  • Docker Engine 20.10+
  • Docker Compose 2.0+
  • 4GB RAM minimum
  • 20GB disk space

Architecture

The docker-compose setup includes:

Setup Steps

1. Prepare Environment

Configure your .env file with all required API keys and credentials.

2. Build Base Image

This creates the base image with all common dependencies.

3. Build All Services

4. Start Services

Monitor logs:
Check specific service:

5. Verify Deployment

Service Details

Main App Service

Key Environment Variables:
  • PORT: Application port (default: 8010)
  • Environment: Set to production for production use
  • GEMINI_API_KEY: Google Gemini API key
  • OPENAI_API_KEY: OpenAI API key
  • SUPABASE_URL: Supabase project URL
  • SUPABASE_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

Edit docker-compose.yml:

Networking

All services communicate via the internal Docker network call-agent-network. To expose services externally:

Data Persistence

Volumes

Create persistent volumes:

Health Checks

Each service includes health checks:
Check service health:

Troubleshooting

Port Conflicts

If ports are already in use, modify port mappings in docker-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.