conductorv2

Self-Hosting Conductor Cloud

Run your own Conductor Cloud server to sync credentials across devices

Why Self-Host?

  • Full data sovereignty - Your credentials never leave your infrastructure
  • No external dependencies - Everything runs locally
  • Custom authentication - Use your own OAuth credentials
  • Free forever - No subscription, no cloud fees

Quick Start (Docker)

# Clone the repository
git clone https://github.com/useconductor/conductor.git
cd conductor

# Start the cloud server
docker-compose -f docker-compose.cloud.yml up -d

The server will be available at http://localhost:3000

Configuration

Create a .env file:

# Server config
PORT=3000
NODE_ENV=production

# OAuth (get from GitHub/Google developer portals)
GITHUB_CLIENT_ID=your_github_client_id
GITHUB_CLIENT_SECRET=your_github_client_secret
GOOGLE_CLIENT_ID=your_google_client_id
GOOGLE_CLIENT_SECRET=your_google_client_secret

# Security (generate a strong random string)
JWT_SECRET=your_super_secret_jwt_key
ENCRYPTION_KEY=your_256bit_encryption_key

# Database
DATABASE_URL=postgresql://conductor:conductor@db:5432/conductor

Docker Compose Services

services:
  # API Server
  conductor-api:
    build: ./conductor
    ports:
      - "3000:3000"
    environment:
      - DATABASE_URL=postgresql://conductor:conductor@db:5432/conductor
      - JWT_SECRET=${JWT_SECRET}
    depends_on:
      - db

  # PostgreSQL
  db:
    image: postgres:15-alpine
    environment:
      - POSTGRES_USER=conductor
      - POSTGRES_PASSWORD=conductor
      - POSTGRES_DB=conductor
    volumes:
      - postgres_data:/var/lib/postgresql/data

  # Redis (optional, for caching)
  redis:
    image: redis:7-alpine
    volumes:
      - redis_data:/data

Connecting CLI

After starting your server, configure the CLI:

conductor cloud login --server http://localhost:3000

OAuth Setup

GitHub OAuth App

  1. Go to GitHub Developer Settings
  2. Create a new OAuth App
  3. Set Homepage URL to your domain
  4. Set Authorization callback URL to https://yourdomain.com/auth/callback
  5. Copy Client ID and Client Secret

Google OAuth

  1. Go to Google Cloud Console
  2. Create OAuth 2.0 Client ID
  3. Set authorized redirect URIs to https://yourdomain.com/auth/callback
  4. Copy Client ID and Client Secret

Getting Help