# Greendale Media Centre — Unraid Setup Guide ## Quick Start ### 1. Export to Unraid ```bash # Make the export script executable chmod +x export-to-unraid.sh # Export (replace with your Unraid IP) ./export-to-unraid.sh root@192.168.86.10 # Or with a custom destination path ./export-to-unraid.sh root@192.168.86.10 /mnt/user/appdata/greendale ``` ### 2. Configure `.env` on Unraid SSH into your Unraid server and edit the config: ```bash ssh root@192.168.86.10 nano /mnt/user/appdata/greendale/.env ``` **Minimum required fields:** ```env LOGIN_PASSWORD=your_chosen_password SECRET_KEY= ARR_HOST=192.168.86.33 SONARR_API_KEY=... RADARR_API_KEY=... SABNZBD_API_KEY=... TAUTULLI_API_KEY=... PROWLARR_API_KEY=... OMBI_API_KEY=... ``` Generate a secure `SECRET_KEY`: ```bash python3 -c "import secrets; print(secrets.token_hex(32))" ``` ### 3. Start the Container ```bash cd /mnt/user/appdata/greendale docker compose up -d ``` The dashboard will be available at `http://YOUR_UNRAID_IP:5055` --- ## Nginx Proxy Manager (Recommended for Unraid) If you're using **Nginx Proxy Manager** (NPM) on Unraid: 1. In NPM, go to **Proxy Hosts → Add Proxy Host** 2. Fill in: - **Domain:** `media.yourdomain.com` - **Scheme:** `http` - **Forward Hostname/IP:** your Unraid IP (e.g. `192.168.86.10`) - **Forward Port:** `5055` - Enable **"Block Common Exploits"** - Enable **"Websockets Support"** 3. On the **SSL tab:** request a Let's Encrypt certificate That's it. NPM handles the SSL termination and reverse proxy automatically. --- ## Manual Nginx Config If you're running Nginx directly (not NPM), use the configs in the `nginx/` folder: | File | Use when | |------|----------| | `nginx/greendale-subdomain.conf` | You want `https://media.yourdomain.com` | | `nginx/greendale-subpath.conf` | You want `https://yourdomain.com/media/` | Copy the appropriate file and replace the placeholders: - `YOUR_UNRAID_IP` → your Unraid server's LAN IP - `yourdomain.com` / `media.yourdomain.com` → your domain - `5055` → your `HOST_PORT` (if you changed it) --- ## Login Page The dashboard is protected by a single-password login page themed to match Greendale. - Set `LOGIN_PASSWORD` in `.env` - Sessions persist for the browser session (close browser to log out) - Visit `/logout` to manually log out - If `LOGIN_PASSWORD` is not set, the login is bypassed (dev mode) --- ## Updating To push code changes to Unraid after editing locally: ```bash # Re-run the export script ./export-to-unraid.sh root@192.168.86.10 # On Unraid: cd /mnt/user/appdata/greendale docker compose down docker compose up -d ``` --- ## Unraid Community Applications (Manual Docker Template) If you prefer to set up via the Unraid Docker UI instead of `docker compose`: | Field | Value | |-------|-------| | Name | `greendale-media-centre` | | Repository | `arr-summary-arr-summary` (after loading image) | | Port | Host: `5055` → Container: `5000` | | ENV: `LOGIN_PASSWORD` | your password | | ENV: `SECRET_KEY` | random 32-char string | | ENV: `ARR_HOST` | `192.168.86.33` | | ENV: `SONARR_API_KEY` | your key | | ENV: `RADARR_API_KEY` | your key | | ENV: `SABNZBD_API_KEY` | your key | | ENV: `TAUTULLI_API_KEY` | your key | | ENV: `PROWLARR_API_KEY` | your key | | ENV: `OMBI_API_KEY` | your key | | Restart Policy | `unless-stopped` | --- ## Troubleshooting **Container won't start:** ```bash docker logs arr-summary ``` **Can't reach services (all cards show errors):** - Verify `ARR_HOST` is the correct LAN IP - Ensure services are running and accessible from Unraid - Check API keys are correct **Login loop / session issues:** - Make sure `SECRET_KEY` is set and consistent (random restarts shouldn't clear sessions) - If running behind a proxy, confirm `X-Forwarded-Proto` header is being passed