Files
homelab-dashboard/config.yaml.example
Dashboard 89cdb022f3 Initial commit: Homelab Dashboard with YAML configuration
Features:
- Service health monitoring with response times
- Proxmox cluster integration (nodes, VMs, containers)
- PBS backup server monitoring
- Camera viewer with WebRTC (go2rtc)
- Docker container monitoring
- Uptime Kuma integration
- Mobile-friendly responsive design
- YAML-based configuration for easy setup
2026-02-02 20:27:05 +00:00

216 lines
5.2 KiB
Plaintext

# ============================================================
# Dashboard Configuration
# ============================================================
# Copy this file to config.yaml and customize for your setup
# Sensitive values (API keys, secrets) go in secrets.yaml
# ============================================================
# Dashboard settings
dashboard:
title: "My Homelab"
refresh_interval: 30 # seconds
theme: dark # dark or light
show_response_times: true
show_icons: true
# ============================================================
# Proxmox Cluster Configuration
# ============================================================
proxmox:
enabled: true
nodes:
- name: node1
ip: 192.168.1.10
port: 8006
- name: node2
ip: 192.168.1.11
port: 8006
# API credentials go in secrets.yaml
# ============================================================
# Proxmox Backup Server (PBS)
# ============================================================
pbs:
enabled: true
url: https://192.168.1.20:8007
# API credentials go in secrets.yaml
# ============================================================
# Camera Configuration (go2rtc)
# ============================================================
cameras:
enabled: true
go2rtc_url: http://192.168.1.30:1985
# List camera stream names as configured in go2rtc
streams:
- FrontDoor
- Backyard
- Driveway
# ============================================================
# Docker Hosts
# ============================================================
docker:
enabled: true
hosts:
- name: docker1
ip: 192.168.1.40
port: 2375 # Docker API port (ensure it's secured!)
# ============================================================
# Uptime Kuma
# ============================================================
uptime_kuma:
enabled: true
url: http://192.168.1.50:3001
status_page: default # Status page slug
# ============================================================
# Categories
# ============================================================
# Define service categories with colors
categories:
Infrastructure:
color: blue
icon: server
Media:
color: purple
icon: film
Monitoring:
color: amber
icon: chart
Apps:
color: emerald
icon: cog
Home:
color: cyan
icon: home
# ============================================================
# Services
# ============================================================
# Define all services to monitor
#
# Fields:
# name: Display name
# url: URL to open when clicked (can be external domain)
# ip: Internal IP for health checks
# port: Port for health checks
# category: Must match a category defined above
# icon: Icon name (see available icons below)
# favorite: Show in favorites section (optional)
# critical: Mark as critical service (optional)
# group: Group related services together (optional)
# health_check: Custom health check config (optional)
# url: Override URL for health check
# timeout: Custom timeout in seconds
#
# Available icons:
# server, shield, globe, archive, lock, film, star, video,
# tv, music, search, download, cog, chart, heartbeat, key,
# git, workflow, book, image, brain, home, camera, message, database
#
services:
# Infrastructure
- name: Router
url: https://192.168.1.1
ip: 192.168.1.1
port: 443
category: Infrastructure
icon: shield
critical: true
- name: Reverse Proxy
url: https://192.168.1.2:81
ip: 192.168.1.2
port: 81
category: Infrastructure
icon: globe
critical: true
# Media
- name: Plex
url: https://plex.example.com
ip: 192.168.1.100
port: 32400
category: Media
icon: film
favorite: true
- name: Radarr
url: https://radarr.example.com
ip: 192.168.1.101
port: 7878
category: Media
icon: film
group: Arr Stack
- name: Sonarr
url: https://sonarr.example.com
ip: 192.168.1.102
port: 8989
category: Media
icon: tv
group: Arr Stack
# Monitoring
- name: Grafana
url: https://grafana.example.com
ip: 192.168.1.150
port: 3000
category: Monitoring
icon: chart
favorite: true
- name: Uptime Kuma
url: https://status.example.com
ip: 192.168.1.151
port: 3001
category: Monitoring
icon: heartbeat
# Apps
- name: Vaultwarden
url: https://vault.example.com
ip: 192.168.1.200
port: 80
category: Apps
icon: key
favorite: true
health_check:
url: https://vault.example.com/
timeout: 5
# Home Automation
- name: Home Assistant
url: https://ha.example.com
ip: 192.168.1.50
port: 8123
category: Home
icon: home
favorite: true
critical: true
# ============================================================
# Service Groups
# ============================================================
# Group related services for organization
service_groups:
Arr Stack:
- Radarr
- Sonarr
- Prowlarr
- Sabnzbd
Media Players:
- Plex
- Jellyfin
# ============================================================
# Default favorites (can be customized in UI)
# ============================================================
favorites:
- Plex
- Grafana
- Vaultwarden
- Home Assistant