Sanitized mirror from private repository - 2026-03-30 19:03:43 UTC
This commit is contained in:
310
docs/services/DASHBOARD_SETUP.md
Normal file
310
docs/services/DASHBOARD_SETUP.md
Normal file
@@ -0,0 +1,310 @@
|
||||
# Dashboard Setup Guide
|
||||
|
||||
This document contains configuration details for the homelab dashboards (Homarr and Fenrus).
|
||||
|
||||
## Quick Access
|
||||
|
||||
| Dashboard | URL | Port |
|
||||
|-----------|-----|------|
|
||||
| **Homarr** | http://atlantis.vish.local:7575 | 7575 |
|
||||
| **Fenrus** | http://atlantis.vish.local:4500 | 4500 |
|
||||
|
||||
## Infrastructure Overview
|
||||
|
||||
### Machines (Portainer Endpoints)
|
||||
|
||||
| Machine | IP/Hostname | Containers | Role |
|
||||
|---------|------------|------------|------|
|
||||
| **Atlantis** | 192.168.0.80 | 48 | Primary NAS, Media Server |
|
||||
| **Calypso** | 192.168.0.200 | 52 | Secondary NAS, Auth, Git |
|
||||
| **vish-concord-nuc** | concordnuc.vish.local | 17 | Home Assistant, Voice |
|
||||
| **Homelab VM** | 192.168.0.210 | 30 | Monitoring, AI Tools |
|
||||
| **rpi5** | rpi5.vish.local | 4 | Edge, Uptime Monitoring |
|
||||
|
||||
---
|
||||
|
||||
## Service Configuration
|
||||
|
||||
### Atlantis Services (192.168.0.80)
|
||||
|
||||
#### Media Management (ARR Stack)
|
||||
|
||||
| Service | Port | API Key |
|
||||
|---------|------|---------|
|
||||
| Sonarr | 8989 | `REDACTED_SONARR_API_KEY` |
|
||||
| Radarr | 7878 | `REDACTED_RADARR_API_KEY` |
|
||||
| Lidarr | 8686 | `2084f02ddc5b42d5afe7989a2cf248ba` |
|
||||
| Prowlarr | 9696 | `58b5963e008243cf8cc4fae5276e68af` |
|
||||
| Bazarr | 6767 | `057875988c90c9b05722df7ff5fedc69` |
|
||||
| Whisparr | 6969 | `dc59f21250e44f8fbdd76032a96a2db5` |
|
||||
|
||||
#### Downloaders
|
||||
|
||||
| Service | Port | API Key |
|
||||
|---------|------|---------|
|
||||
| SABnzbd | 8080 (via Gluetun) | `6ae289de5a4f45f7a0124b43ba9c3dea` |
|
||||
| Jackett | 9117 | `ym6hof50bsdzk292ml8ax0zqj8ree478` |
|
||||
|
||||
#### Media Servers & Tools
|
||||
|
||||
| Service | Port | Token/API Key |
|
||||
|---------|------|---------------|
|
||||
| Plex | 32400 | `Cavsw8jf4Z9swTbYopgd` |
|
||||
| Tautulli | 8181 | `781849be7c1e4f7099c2781c1685b15b` |
|
||||
| Jellyseerr | 5055 | `MTczODEyMjA4NTgwNzdhYjdkODNkLTlmN2EtNDgzZS1hMThhLTg3MmE3N2VjMjRhNw==` |
|
||||
|
||||
#### Other Services
|
||||
|
||||
| Service | Port | Notes |
|
||||
|---------|------|-------|
|
||||
| Fenrus | 4500 | Dashboard |
|
||||
| Homarr | 7575 | Dashboard |
|
||||
| Immich | 8212 | Photo Management |
|
||||
| Syncthing | 8384 | File Sync |
|
||||
| Vaultwarden | 4080 | Password Manager |
|
||||
| IT-Tools | 5545 | Dev Tools |
|
||||
| Ollama | 11434 | LLM Server |
|
||||
| Open WebUI | 8271 | Ollama UI |
|
||||
| Wizarr | 5690 | Plex Invites |
|
||||
| YouTube DL | 8084 | Video Downloader |
|
||||
| Joplin | 22300 | Notes |
|
||||
| Baikal | 12852 | CalDAV/CardDAV |
|
||||
| DokuWiki | 4443/8399 | Wiki |
|
||||
| Watchtower | 8090 | Auto Updates |
|
||||
| Jitsi | 5443/5080 | Video Calls |
|
||||
| Portainer | 9443 | Container Mgmt |
|
||||
|
||||
### Calypso Services (192.168.0.200)
|
||||
|
||||
| Service | Port | Notes |
|
||||
|---------|------|-------|
|
||||
| Nginx Proxy Manager | 81 (admin), 8880/8443 | Reverse Proxy |
|
||||
| Authentik | 9000/9443 | SSO/Auth |
|
||||
| Gitea | 3052 | Git Server |
|
||||
| Seafile | 8611/8612 | File Cloud |
|
||||
| Reactive Resume | 9751 | Resume Builder |
|
||||
| PaperlessNGX | 8777 | Document Management |
|
||||
| Immich | 8212 | Photo Management |
|
||||
| Actual Budget | 8304 | Budgeting |
|
||||
| Rustdesk | 21115-21119 | Remote Desktop |
|
||||
| OpenSpeedTest | 8004 | Speed Testing |
|
||||
| ARR Stack (duplicate) | Various | Backup media mgmt |
|
||||
|
||||
### Concord NUC Services (concordnuc.vish.local)
|
||||
|
||||
| Service | Port | Notes |
|
||||
|---------|------|-------|
|
||||
| Home Assistant | 8123 | Home Automation (needs token from UI) |
|
||||
| Plex | 32400 | Media Server |
|
||||
| AdGuard | - | DNS Filtering |
|
||||
| WireGuard | 51820/51821 | VPN |
|
||||
| Syncthing | 8384 | File Sync |
|
||||
| Invidious | 3000 | YouTube Frontend |
|
||||
| Materialious | 3001 | Invidious UI |
|
||||
| Your Spotify | 4000/15000 | Spotify Stats |
|
||||
| Piper/Whisper/Wakeword | 10200/10300/10400 | Voice Assistant |
|
||||
|
||||
### Homelab VM Services (192.168.0.210)
|
||||
|
||||
| Service | Port | Notes |
|
||||
|---------|------|-------|
|
||||
| Grafana | 3300 | Monitoring Dashboard |
|
||||
| Prometheus | 9090 | Metrics |
|
||||
| Alertmanager | 9093 | Alert Routing |
|
||||
| NTFY | 8081 | Push Notifications |
|
||||
| OpenHands | 3001 | AI Assistant |
|
||||
| Perplexica | 4785 | AI Search |
|
||||
| Redlib | 9000 | Reddit Frontend |
|
||||
| ProxiTok | 9770 | TikTok Frontend |
|
||||
| Binternet | 21544 | Pinterest Frontend |
|
||||
| Draw.io | 5022 | Diagramming |
|
||||
| ArchiveBox | 7254 | Web Archive |
|
||||
| Web-Check | 6160 | Site Analysis |
|
||||
| Hoarder/Karakeep | 3000 | Bookmarks |
|
||||
|
||||
### RPi5 Services
|
||||
|
||||
| Service | Port | Notes |
|
||||
|---------|------|-------|
|
||||
| Uptime Kuma | - | Uptime Monitoring |
|
||||
| Glances | - | System Monitor |
|
||||
|
||||
---
|
||||
|
||||
## Homarr Configuration Guide
|
||||
|
||||
### Current Setup (Auto-Configured)
|
||||
|
||||
The Homarr dashboard has been pre-configured with:
|
||||
|
||||
**Board: "Homelab"** - Set as home board for user `vish`
|
||||
|
||||
**Sections (6 total, grouped by machine):**
|
||||
| Section | Services | Integrations |
|
||||
|---------|----------|--------------|
|
||||
| Media (Atlantis) | Plex, Jellyseerr, Tautulli | ✅ All with API keys |
|
||||
| Downloads (Atlantis) | Sonarr, Radarr, Lidarr, Prowlarr, Bazarr, Whisparr, SABnzbd, Jackett | ✅ Sonarr, Radarr, Lidarr, Prowlarr, SABnzbd |
|
||||
| Infrastructure (Atlantis) | Portainer, Authentik, Gitea, NPM | Links only |
|
||||
| Services (Calypso) | Homarr | Links only |
|
||||
| Smart Home (Concord NUC) | Home Assistant | Links only (needs token) |
|
||||
| Monitoring (Homelab VM) | Grafana, Prometheus | Links only |
|
||||
|
||||
**Total: 17 apps configured**
|
||||
|
||||
### Initial Setup
|
||||
|
||||
1. Access Homarr at http://192.168.0.80:7575
|
||||
2. Create an admin account on first launch
|
||||
3. Go to **Settings** → **Boards** to configure your dashboard
|
||||
|
||||
### Adding Integrations
|
||||
|
||||
#### Sonarr Integration
|
||||
1. Click **Add Tile** → **Sonarr**
|
||||
2. Enter URL: `http://192.168.0.80:8989`
|
||||
3. Enter API Key: `REDACTED_SONARR_API_KEY`
|
||||
4. Enable widgets: Queue, Calendar, Series Count
|
||||
|
||||
#### Radarr Integration
|
||||
1. Click **Add Tile** → **Radarr**
|
||||
2. Enter URL: `http://192.168.0.80:7878`
|
||||
3. Enter API Key: `REDACTED_RADARR_API_KEY`
|
||||
4. Enable widgets: Queue, Calendar, Movie Count
|
||||
|
||||
#### SABnzbd Integration
|
||||
1. Click **Add Tile** → **SABnzbd**
|
||||
2. Enter URL: `http://192.168.0.80:8080`
|
||||
3. Enter API Key: `6ae289de5a4f45f7a0124b43ba9c3dea`
|
||||
4. Shows: Download speed, queue size, history
|
||||
|
||||
#### Plex Integration
|
||||
1. Click **Add Tile** → **Plex**
|
||||
2. Enter URL: `http://192.168.0.80:32400`
|
||||
3. Enter Token: `Cavsw8jf4Z9swTbYopgd`
|
||||
|
||||
#### Tautulli Integration
|
||||
1. Click **Add Tile** → **Tautulli**
|
||||
2. Enter URL: `http://192.168.0.80:8181`
|
||||
3. Enter API Key: `781849be7c1e4f7099c2781c1685b15b`
|
||||
4. Shows: Active streams, recent plays
|
||||
|
||||
### Recommended Board Layout
|
||||
|
||||
```
|
||||
┌─────────────────────────────────────────────────────────────┐
|
||||
│ ATLANTIS (NAS) │
|
||||
├─────────────┬─────────────┬─────────────┬─────────────────────┤
|
||||
│ Sonarr │ Radarr │ Lidarr │ Prowlarr │
|
||||
│ (queue) │ (queue) │ (queue) │ (indexers) │
|
||||
├─────────────┼─────────────┼─────────────┼─────────────────────┤
|
||||
│ SABnzbd │ Plex │ Tautulli │ Jellyseerr │
|
||||
│ (speed) │ (playing) │ (streams) │ (requests) │
|
||||
├─────────────┴─────────────┴─────────────┴─────────────────────┤
|
||||
│ CALYPSO │
|
||||
├─────────────┬─────────────┬─────────────┬─────────────────────┤
|
||||
│ Gitea │ Authentik │ Paperless │ NPM │
|
||||
├─────────────┴─────────────┴─────────────┴─────────────────────┤
|
||||
│ CONCORD NUC │
|
||||
├─────────────┬─────────────┬─────────────────────────────────────┤
|
||||
│ Home Asst │ AdGuard │ Invidious │
|
||||
├─────────────┴─────────────┴─────────────────────────────────────┤
|
||||
│ HOMELAB VM │
|
||||
├─────────────┬─────────────┬─────────────────────────────────────┤
|
||||
│ Grafana │ Prometheus │ NTFY │
|
||||
└─────────────┴─────────────┴─────────────────────────────────────┘
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Fenrus Configuration Guide
|
||||
|
||||
Fenrus stores configuration in a SQLite database at:
|
||||
`/volume2/metadata/docker/fenrus/Fenrus.db`
|
||||
|
||||
### Backup Location
|
||||
`/volume2/metadata/docker/fenrus-backup-20260201/`
|
||||
|
||||
### Adding Apps in Fenrus
|
||||
|
||||
1. Access Fenrus at http://192.168.0.80:4500
|
||||
2. Click the **+** to add a new app
|
||||
3. Select the app type (e.g., Sonarr)
|
||||
4. Enter:
|
||||
- Name: Sonarr
|
||||
- URL: http://192.168.0.80:8989
|
||||
- API Key: (from table above)
|
||||
5. Save and the integration should show live data
|
||||
|
||||
### Fenrus Supported Integrations
|
||||
|
||||
Fenrus has built-in smart apps for:
|
||||
- Sonarr, Radarr, Lidarr, Readarr
|
||||
- SABnzbd, qBittorrent, Deluge
|
||||
- Plex, Jellyfin, Emby
|
||||
- Tautulli
|
||||
- Pi-hole, AdGuard
|
||||
- And many more...
|
||||
|
||||
---
|
||||
|
||||
## Reverse Proxy Setup (dash.vish.gg)
|
||||
|
||||
When ready to expose externally:
|
||||
|
||||
### Nginx Proxy Manager Configuration
|
||||
|
||||
1. Access NPM at http://192.168.0.200:81
|
||||
2. Add Proxy Host:
|
||||
- Domain: `dash.vish.gg`
|
||||
- Scheme: `http`
|
||||
- Forward Hostname: `192.168.0.80`
|
||||
- Forward Port: `7575` (Homarr) or `4500` (Fenrus)
|
||||
- Enable SSL (Let's Encrypt)
|
||||
- Enable Force SSL
|
||||
|
||||
### Authentik Forward Auth (Recommended)
|
||||
|
||||
1. In Authentik, create an Application for the dashboard
|
||||
2. Create a Proxy Provider with Forward Auth (single application)
|
||||
3. In NPM, add custom Nginx config for forward auth headers
|
||||
|
||||
---
|
||||
|
||||
## Maintenance
|
||||
|
||||
### Backup Commands
|
||||
|
||||
```bash
|
||||
# Backup Fenrus
|
||||
sudo cp -r /volume2/metadata/docker/fenrus /volume2/metadata/docker/fenrus-backup-$(date +%Y%m%d)
|
||||
|
||||
# Backup Homarr
|
||||
sudo cp -r /volume2/metadata/docker/homarr /volume2/metadata/docker/homarr-backup-$(date +%Y%m%d)
|
||||
```
|
||||
|
||||
### Update Commands
|
||||
|
||||
```bash
|
||||
# Via Portainer: Go to Stacks → Select stack → Pull and redeploy
|
||||
|
||||
# Via CLI:
|
||||
DOCKER=/var/packages/REDACTED_APP_PASSWORD/target/usr/bin/docker
|
||||
sudo $DOCKER compose pull
|
||||
sudo $DOCKER compose up -d
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Security Notes
|
||||
|
||||
⚠️ **API Keys in this document are sensitive!**
|
||||
|
||||
- Do not commit this file to public repositories
|
||||
- Rotate keys periodically
|
||||
- Use Authentik for external access
|
||||
- Consider using environment variables or secrets management
|
||||
|
||||
---
|
||||
|
||||
*Last updated: 2026-02-01*
|
||||
*Generated by OpenHands during dashboard setup*
|
||||
Reference in New Issue
Block a user