# NexaDash Deployment Guide ## Quick Start with Docker Compose 1. Copy the example environment: ```bash cp .env.example .env ``` 2. Edit `.env` and set strong passwords and secrets. 3. Start the stack: ```bash docker compose up -d ``` 4. Open `http://localhost:3000` and complete the setup wizard. ## Services - `web` — Next.js frontend (port 3000). - `api` — FastAPI backend (port 8000). - `worker` — Celery background worker. - `postgres` — PostgreSQL database. - `redis` — Redis for cache, jobs and sessions. ## Reverse Proxy Set `NEXADASH_WEB_URL` and `NEXADASH_API_URL` to your public URLs. Use a reverse proxy with HTTPS. The API expects the web origin in its CORS allowlist. ## Healthchecks - API: `GET /health` - Web: built-in Docker healthcheck ## Backup and Restore ### Database Backup ```bash docker compose exec postgres pg_dump -U nexadash nexadash > backup.sql ``` ### Restore ```bash docker compose exec -T postgres psql -U nexadash nexadash < backup.sql ``` ### Volumes Important Docker volumes: - `postgres_data` — database files. - `redis_data` — Redis persistence. - `plugin_data` — uploaded plugin files. ## Updates ```bash git pull docker compose build docker compose up -d ``` Run migrations after updates: ```bash docker compose exec api alembic upgrade head ``` ## Development See `README.md` for developer setup.