Complete installation package for deploying Supercog on-premise with enterprise-grade reliability, monitoring, and security.
# Clone the installer
git clone https://github.com/supercog-ai/supercog-installer.git
cd supercog-installer
# Make all scripts executable
chmod +x scripts/*.sh scripts/install/*.sh utils/*.sh
# Run the installation steps
./scripts/install/01-install-docker.sh
./scripts/install/02-create-directories.sh
./scripts/install/03-setup-env-file.sh
./scripts/install/04-configure-registry.sh
./scripts/install/05-init-databases.sh
# Start services
docker compose up -d
Run each installation script in order:
./scripts/install/01-install-docker.sh
- Detects your OS and installs Docker + Docker Compose
- Configures Docker to start on boot
- Sets up proper permissions so you can run Docker without sudo
- Configures log rotation and other optimizations
./scripts/install/02-create-directories.sh
- Creates required directories for logs, backups, keys, and local data
- Sets appropriate permissions on sensitive directories
./scripts/install/03-setup-env-file.sh
- Creates
.env
file from template - Configures AI API keys (OpenAI and/or Claude)
- Generates security keys (ECDSA keys and master encryption key)
- You need at least one AI API key for Supercog to function
./scripts/install/04-configure-registry.sh
- Sets up authentication to pull Supercog Docker images
- Tests registry connection
- Saves credentials securely in
.env
docker compose up -d
- Starts all Supercog services
- Access the dashboard at http://localhost:3000
Health Check
./scripts/health-check.sh
- Checks status of all services
- Shows disk usage and Docker volumes
- Reports recent errors from logs
- Overall system health status
Update Manager
./scripts/update-supercog.sh [command]
Commands:
check
- Check for available updates (default)update
- Download updates and restart servicesrestart
- Restart all servicesstatus
- Show current image versionsclean
- Remove old unused imagesauto
- Automatic mode for cron jobs
Log Manager
./scripts/logs-manager.sh [command] [service]
Commands:
collect [service]
- Save logs to filetail [service]
- Follow logs in real-timeclean
- Remove logs older than 7 daysanalyze
- Show recent errors and warnings
Create Backup
./scripts/backup.sh
- Backs up all databases
- Backs up MinIO/S3 data
- Saves configuration files
- Creates compressed archive with timestamp
- Automatically cleans old backups (keeps last 7)
Restore from Backup
./scripts/restore.sh <backup-file> [options]
Options:
--data-only
- Restore only databases and files--config-only
- Restore only configuration--force
- Skip confirmation prompts--no-stop
- Don't stop services before restore
./scripts/init-databases.sh
- Starts PostgreSQL container
- Creates all required databases (dashboard, engine, credentials, RAG)
- Sets up pgvector extension for embeddings
- Verifies database creation
Generate Security Keys
./utils/generate-keys.sh [command]
Commands:
generate
- Generate missing keys (default)show
- Show which keys are setregenerate
- Force regenerate all keys (WARNING: data loss risk)
System Check
./utils/system-check.sh
- Verifies system meets requirements
- Checks available disk space, RAM, and CPU
- Tests Docker installation
- Validates network connectivity
- Supercog Dashboard (Port 3000) - Web interface for managing agents
- Supercog Engine (Port 8080) - Core AI processing engine
- PostgreSQL (Port 5432) - Database with pgvector for embeddings
- Redis (Port 6379) - Caching and session storage
- MinIO (Port 9002/9003) - S3-compatible object storage
βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ
β Dashboard ββββββΆβ Engine ββββββΆβ PostgreSQL β
β (Port 3000) β β (Port 8080) β β (Port 5432) β
βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ
β β
βΌ βΌ
βββββββββββββββββββ βββββββββββββββββββ
β Redis β β MinIO β
β (Port 6379) β β (Port 9002) β
βββββββββββββββββββ βββββββββββββββββββ
Enable nightly updates by adding to crontab:
# Check and apply updates at 2 AM daily
0 2 * * * /path/to/supercog-installer/scripts/update-supercog.sh auto
supercog-installer/
βββ docker-compose.yml # Service definitions
βββ .env.example # Environment template
βββ scripts/ # Management scripts
β βββ install/ # Step-by-step installers
β βββ update-supercog.sh
β βββ health-check.sh
β βββ backup.sh
β βββ restore.sh
β βββ logs-manager.sh
βββ utils/ # Utility scripts
β βββ generate-keys.sh
β βββ colors.sh
βββ sql/ # Database schemas
βββ logs/ # Application logs (created at runtime)
# Stop all services
docker compose down
# Start all services
docker compose up -d
# Restart specific service
docker compose restart engine
# View service status
docker compose ps
# Tail all service logs
./scripts/logs-manager.sh tail
# Tail specific service
./scripts/logs-manager.sh tail engine
# Collect logs for support
./scripts/logs-manager.sh collect
# Stop and remove everything
docker compose down -v
# Remove data directories
rm -rf local_data/ logs/ backups/
# Start fresh
./scripts/install.sh
- Email: [email protected]
- Issues: GitHub Issues
- Check service health:
./scripts/health-check.sh
- Collect logs:
./scripts/logs-manager.sh collect
- Note your version:
cat VERSION
Made with β€οΈ by the Supercog team