Open Cold Dialer

Documentation

Deployment

Run Open Cold Dialer in production with Docker Compose, on an Ubuntu VPS behind Nginx, or on Hostinger.

git clone https://github.com/6t9xstar/Open-Cold-Dialer.git
cd Open-Cold-Dialer
cp .env.example .env.local

# Generate a secure JWT secret
echo "JWT_SECRET=$(openssl rand -hex 32)" >> .env.local

docker compose up -d
docker compose exec backend npm run seed

The app is now on port 3000 and the API on port 4000. For development with live reload, use docker compose -f docker-compose.dev.yml up.

VPS

You need Ubuntu 22.04 or similar with Docker installed, and optionally a domain name.

curl -fsSL https://get.docker.com -o get-docker.sh
sh get-docker.sh

git clone https://github.com/6t9xstar/Open-Cold-Dialer.git
cd Open-Cold-Dialer
cp .env.example .env.local
nano .env.local   # add your SIP credentials and JWT secret

docker compose up -d
docker compose exec backend npm run seed

Nginx reverse proxy

server {
    listen 80;
    server_name dialer.example.com;

    location / {
        proxy_pass http://localhost:3000;
    }

    location /api {
        proxy_pass http://localhost:4000;
    }
}

Add HTTPS with Certbot (certbot --nginx). Calls need it, because browsers block microphone access on plain HTTP.

Hostinger

The repository includes Hostinger scripts in hostinger/ and scripts/. Follow scripts/HOSTINGER_SETUP.md in the repository.

Production checklist

  • Set a long random JWT_SECRET.
  • Change the seeded admin password.
  • Serve over HTTPS.
  • Back up the SQLite database file, or use Supabase.