# Dream Server FAQ Frequently asked questions about installing, running, and troubleshooting Dream Server. > **Also see:** [`docs/FAQ.md`](docs/FAQ.md) for hardware requirements, pricing, and comparisons with alternatives. --- ## General Questions ### What is Dream Server? Dream Server is a turnkey local AI stack that runs entirely on your own hardware. It includes: - LLM inference via llama-server (qwen2.5-32b-instruct) - Web dashboard for chat and model management - Voice capabilities (STT via Whisper, TTS via Kokoro) - Workflow automation via n8n - API gateway with privacy shield for external services ### What are the minimum requirements? **Minimum (bootstrap mode):** - Any modern CPU - 8GB RAM - 10GB disk space - Docker + Docker Compose **Recommended (full experience):** - NVIDIA GPU with 24GB+ VRAM (RTX 3090/4090) - 32GB+ system RAM - 100GB+ SSD storage - Ubuntu 22.04/24.04 or WSL2 on Windows ### Do I need an internet connection? **Initial setup:** Yes, to download models and Docker images. **After setup:** No. Dream Server is designed for offline/air-gapped operation. All models run locally. ### Is my data private? Yes. Everything runs on your hardware: - Conversations never leave your machine - Voice processing is local - API calls to external services go through the Privacy Shield (PII redaction) - No telemetry or analytics ### How much does it cost? Dream Server is **free and open source** (Apache 2.0 license). You only pay for: - Your hardware (one-time cost) - Electricity to run it --- ## Installation ### The installer fails with "Docker not found" **Linux:** ```bash curl -fsSL https://get.docker.com | sh sudo usermod -aG docker $USER newgrp docker ``` **Windows:** Install Docker Desktop from https://docs.docker.com/desktop/install/windows-install/ Enable WSL2 backend in Docker Desktop settings. ### "Permission denied" when running install.sh Make the script executable: ```bash chmod +x install.sh ./install.sh ``` ### The installer hangs during model download This is normal for large models (20GB+). The installer shows progress bars with: - Download speed - Time elapsed - ETA **To speed up:** Use a wired connection. WiFi can be unstable for large downloads. **To restart:** The installer resumes partial downloads automatically. ### Bootstrap mode started but I want the full model now ```bash ./scripts/upgrade-model.sh ``` This hot-swaps from the 1.5B bootstrap model to your full model without downtime. ### How do I skip bootstrap mode? ```bash ./install.sh --no-bootstrap ``` This downloads the full model first. You'll wait longer before first use. ### How do I switch to a different model? Use the `dream` CLI: ```bash dream model current # See what's running dream model list # Show available tiers and models dream model swap T3 # Switch to Tier 3 (e.g., Qwen3 30B-A3B) ``` The model file must already be downloaded. If it isn't, pre-fetch it first: ```bash ./scripts/pre-download.sh --tier 3 ``` ### Can I use my own GGUF model? Yes. Drop the `.gguf` file into `data/models/`, then update `.env`: ```bash GGUF_FILE=my-model.gguf LLM_MODEL=my-model ``` Restart the inference server: ```bash docker compose restart llama-server ``` The model will load in ~30-120 seconds depending on size. If it fails, Dream Server automatically rolls back to the previous model. ### What models are available? The installer auto-selects based on your GPU, but you can switch between any tier: | Tier | Model | Min VRAM | |------|-------|----------| | T1 | Qwen3.5 9B | 8 GB | | T2 | Qwen3.5 9B | 12 GB | | T3 | Qwen3 30B-A3B | 20 GB | | T4 | Qwen3 30B-A3B (MoE) | 40 GB | | SH_COMPACT | Qwen3 30B-A3B (MoE) | 64 GB unified | | SH_LARGE | Qwen3 Coder Next 80B (MoE) | 90 GB unified | Run `dream model list` for the full list on your system. ### NVIDIA GPU not detected **Check driver:** ```bash nvidia-smi ``` **If missing:** Install NVIDIA drivers: ```bash # Ubuntu sudo apt update sudo apt install nvidia-driver-550 sudo reboot ``` **Check Docker runtime:** ```bash sudo nvidia-ctk runtime configure --runtime=docker sudo systemctl restart docker ``` ### "CUDA out of memory" errors Your GPU doesn't have enough VRAM. Options: 1. Use a smaller model (qwen2.5-7b-instruct instead of 32b) 2. All models use GGUF Q4_K_M quantization by default 3. Reduce `CTX_SIZE` in `.env` (try 4096) 4. Run on CPU only (slower but works) ### Windows: WSL2 installation fails Enable WSL2 manually: ```powershell wsl --install -d Ubuntu-24.04 wsl --set-default-version 2 ``` Then restart the installer. ### The web dashboard won't load **Check if services are running:** ```bash docker compose ps ``` **Check logs:** ```bash docker compose logs dashboard-api docker compose logs llama-server ``` **Common fixes:** - Wait 30 seconds for services to start - Check http://localhost:3001 (direct API) vs http://localhost:3000 (UI) - Restart: `docker compose restart` ### How do I uninstall? ```bash docker compose down -v # Stop and remove containers + volumes rm -rf ~/dream-server # Remove installation directory (optional) ``` This removes Docker containers and volumes. Add `-v` to also remove downloaded models and data. --- ## Usage ### How do I access the web interface? ``` http://localhost:3000 ``` On first run, the installer displays a QR code. Scan it with your phone for instant mobile access. ### What's the default password? The installer generates secure random passwords and displays them at the end. Look for: ``` ✓ Dashboard URL: http://localhost:3000 ✓ API Key: dsf8a9s7df8a9s7df... ``` Passwords are also saved to `.env` in the dream-server directory. ### How do I change the password? Edit `.env`: ```bash nano .env # Change: DASHBOARD_PASSWORD=your-new-password docker compose restart dashboard ``` ### Can I access from other devices on my network? Yes! Use your machine's local IP: ``` http://192.168.1.xxx:3000 ``` The installer shows this URL with a QR code at the end. ### How do I create a workflow? 1. Open http://localhost:3000/workflows 2. Click "New Workflow" 3. Select a template or start from scratch 4. Connect nodes (triggers → actions) 5. Save and activate ### What's n8n? n8n is the workflow engine built into Dream Server. It provides: - Visual workflow editor - 400+ integrations (GitHub, Slack, email, etc.) - Webhook triggers - Scheduled jobs - AI agent capabilities ### Can I connect to external APIs? Yes, through the **Privacy Shield**: 1. Configure the shield service (runs on port 8085) 2. Route API calls through `http://localhost:8085/proxy/{service}` 3. PII is automatically redacted before leaving your network ### How do I use voice features? **Prerequisites:** Microphone and speakers/headphones 1. Open the Voice page in the dashboard 2. Click "Start Conversation" 3. Allow microphone access 4. Speak naturally — the system handles STT → LLM → TTS automatically ### Which STT model should I use? | Model | Speed | Accuracy | Use Case | |-------|-------|----------|----------| | tiny | ~400ms | Good | Quick commands | | base | ~700ms | Better | General use | | small | ~2s | Best | Accuracy critical | | large-v3 | ~8s | Excellent | Offline transcription | Default is `base`. Change in Settings → Voice. ### Which TTS voice is best? Kokoro provides high-quality voices. Options: - `af_bella` — Natural female (default) - `af_nicole` — Professional female - `am_adam` — Natural male - `am_michael` — Professional male Preview voices in Settings → Voice → Test. --- ## Troubleshooting ### Where are the logs? **All services:** ```bash docker compose logs -f ``` **Specific service:** ```bash docker compose logs -f llama-server docker compose logs -f dashboard-api docker compose logs -f whisper docker compose logs -f tts ``` **To file:** ```bash docker compose logs > dream-server.log 2>&1 ``` ### How do I restart everything? ```bash docker compose down docker compose up -d ``` Or restart specific services: ```bash docker compose restart llama-server ``` ### "Connection refused" to API 1. Check if the API container is running: `docker compose ps dashboard-api` 2. Check logs: `docker compose logs dashboard-api` 3. Verify port 3001 is not in use: `sudo lsof -i :3001` 4. Restart: `docker compose restart dashboard-api` ### Models won't load **Check disk space:** ```bash df -h ``` Models need ~20GB per model. Free up space if needed. **Check model download:** ```bash ls -la data/models/ ``` If empty or incomplete, re-download: ```bash ./scripts/pre-download.sh ``` ### Voice quality is poor **STT issues:** - Check microphone input level - Reduce background noise - Try a different STT model (base → small) **TTS issues:** - Check speaker/headphone connection - Adjust TTS speed in Settings - Try different voices ### Slow response times **Check GPU utilization:** ```bash nvidia-smi ``` If GPU is at 100%, you're GPU-bound. Solutions: - Reduce concurrent requests - Use a smaller model - Enable KV cache quantization **Check if using CPU:** If `nvidia-smi` shows no process, the model is running on CPU (very slow). Fix GPU detection issues above. ### "Rate limit exceeded" errors The Privacy Shield has rate limiting to prevent abuse. Default: 100 requests/minute. To increase: 1. Edit `.env` 2. Change `RATE_LIMIT_REQUESTS_PER_MINUTE=100` 3. Restart: `docker compose restart privacy-shield` ### Workflows not triggering **Check webhook URL:** Must be accessible from the triggering service. **Check n8n logs:** ```bash docker compose logs n8n ``` **Verify workflow is active:** In the workflow editor, toggle must be ON (green). ### Docker volumes taking too much space Clean up unused volumes: ```bash docker volume prune ``` Or remove everything (destructive): ```bash docker compose down -v ``` --- ## Advanced ### How do I add a custom model? See [How do I switch to a different model?](#how-do-i-switch-to-a-different-model) and [Can I use my own GGUF model?](#can-i-use-my-own-gguf-model) above. **Short version:** Drop your `.gguf` file into `data/models/`, set `GGUF_FILE` and `LLM_MODEL` in `.env`, run `docker compose restart llama-server`. Rollback is automatic on failure. ### How do I enable HTTPS? For production deployments, use a reverse proxy (nginx, Caddy, Traefik) in front of Dream Server: ```bash # Example with Caddy (auto-HTTPS with Let's Encrypt) caddy reverse-proxy --from your-domain.com --to localhost:3000 ``` For local development, browsers accept self-signed certs at `https://localhost`. ### Can I run on multiple GPUs? Yes! Edit `docker-compose.nvidia.yml` to expose multiple GPUs: ```yaml deploy: resources: reservations: devices: - driver: nvidia count: 2 # Number of GPUs capabilities: [gpu] ``` ### How do I backup my data? **Configs and data:** ```bash tar -czf dream-server-backup.tar.gz .env data/ ``` **Models (large):** ```bash rsync -av models/ /backup/location/models/ ``` ### How do I update Dream Server? ```bash ./dream-update.sh ``` Or manually: ```bash git pull docker compose pull docker compose up -d ``` This pulls latest code, updates Docker images, and migrates data. ### Where is the database? SQLite databases are in Docker volumes: - `dream-server_n8n-data` — Workflows and credentials - `dream-server_agent-monitor` — Metrics and logs Access via: ```bash docker compose exec n8n sqlite3 /home/node/.n8n/database.sqlite ``` ### Can I use OpenAI/Anthropic APIs? Yes, through the Privacy Shield. Configure in Settings → API Keys. Your requests go: You → Shield (PII redaction) → OpenAI → Shield (deanonymization) → You ### How do I monitor performance? Open the Dashboard → Metrics page for: - GPU utilization and temperature - Request latency (P50, P95, P99) - Token throughput - Active connections Or use the API: ```bash curl http://localhost:3001/api/metrics ``` ### What ports are used? | Port | Service | |------|---------| | 3000 | Open WebUI (chat interface) | | 3001 | Dashboard | | 3002 | Dashboard API | | 8080 | llama-server API | | 8085 | Privacy Shield | | 5678 | n8n workflow editor | | 7880 | LiveKit voice server | | 9000 | Whisper STT | | 8880 | Kokoro TTS | | 6333 | Qdrant vector DB | | 8090 | Embeddings service | ### How do I change the port? Edit `.env`: ```bash DASHBOARD_PORT=8080 ``` Then restart: `docker compose up -d` --- ## Getting Help ### Documentation - Main README: `dream-server/README.md` - Installer Architecture: `docs/INSTALLER-ARCHITECTURE.md` - Security: `SECURITY.md` ### Community - GitHub Issues: https://github.com/Light-Heart-Labs/DreamServer/issues - Discord: #general channel ### Debug info for bug reports Include this output: ```bash # Collect system info echo "=== Docker Compose ===" && docker compose version echo "=== Services ===" && docker compose ps echo "=== Recent Logs ===" && docker compose logs --tail=50 echo "=== GPU ===" && nvidia-smi 2>/dev/null || echo "No GPU" ``` Copy the output into your GitHub issue. --- *Last updated: 2026-03-05*