Deployment Guide

Deploy Aethyr in the environment that best fits your requirements. Choose from local, hybrid, or cloud deployment options.

Deployment Options

Local Mode

Full air-gapped deployment. Data never leaves your infrastructure.

  • Maximum security
  • Complete data control
  • Works offline

Hybrid Mode

Local data with optional cloud inference. Best of both worlds.

  • Local data storage
  • Cloud model access
  • Flexible scaling

Cloud Mode

Fully managed cloud deployment. Minimal setup required.

  • Quick setup
  • Auto-scaling
  • Managed updates

Docker Deployment

The recommended way to deploy Aethyr is using Docker Compose. This provides consistent environments across development and production.

Prerequisites

  • Docker 20.10+ and Docker Compose 2.0+
  • 8GB RAM minimum (16GB recommended for local models)
  • 20GB available disk space
docker-compose.yml
version: '3.8'

services:
  aethyr:
    image: aethyr/console:latest
    ports:
      - "3001:3001"
    environment:
      - NODE_ENV=production
      - DATABASE_URL=postgresql://postgres:password@db:5432/aethyr
      - ENCRYPTION_KEY=${ENCRYPTION_KEY}
    depends_on:
      - db
      - redis
    volumes:
      - ./data:/app/data

  db:
    image: postgres:15-alpine
    environment:
      - POSTGRES_USER=postgres
      - POSTGRES_PASSWORD=password
      - POSTGRES_DB=aethyr
    volumes:
      - postgres_data:/var/lib/postgresql/data

  redis:
    image: redis:7-alpine
    volumes:
      - redis_data:/data

volumes:
  postgres_data:
  redis_data:
Terminal
# Start the stack
docker compose up -d

# Check logs
docker compose logs -f aethyr

# Stop services
docker compose down

Environment Configuration

Configure Aethyr using environment variables. Copy the sample file and customize for your environment.

.env.production
# Database
DATABASE_URL=postgresql://user:pass@host:5432/aethyr

# Security
ENCRYPTION_KEY=your-32-character-encryption-key
JWT_SECRET=your-jwt-secret
SESSION_SECRET=your-session-secret

# Model Configuration
DEFAULT_MODEL=local  # or 'openai', 'anthropic'
LOCAL_MODEL_PATH=/models/llama-7b
OLLAMA_HOST=http://ollama:11434

# Storage
UPLOAD_DIR=/data/uploads
MAX_UPLOAD_SIZE=100MB

# Optional: External API Keys
OPENAI_API_KEY=sk-...
ANTHROPIC_API_KEY=sk-ant-...

Security Best Practice

Never commit .env files to version control. Use secrets management for production deployments.

Production Checklist

  • Enable HTTPS

    Configure SSL/TLS certificates. Use Let's Encrypt for free certificates.

  • Configure Backups

    Set up automated database backups and test restoration procedures.

  • Set Resource Limits

    Configure memory and CPU limits in Docker Compose or Kubernetes.

  • Enable Logging

    Configure centralized logging for monitoring and debugging.

  • Set Up Monitoring

    Configure health checks and alerting for system availability.