From bd17657e670cc4388384624d2cc94e6f25639646 Mon Sep 17 00:00:00 2001 From: Oliver Vogt Date: Sat, 11 Jul 2026 05:52:49 +0200 Subject: [PATCH] Initial Homepage dashboard configuration Services, widgets, layout and settings for the homelab dashboard. Secrets are externalized via {{HOMEPAGE_VAR_*}} placeholders and supplied through a local .env file (not committed). --- .gitignore | 3 + bookmarks.yaml | 16 ++ custom.css | 0 custom.js | 0 docker.yaml | 10 ++ kubernetes.yaml | 2 + proxmox.yaml | 5 + services.yaml | 421 ++++++++++++++++++++++++++++++++++++++++++++++++ settings.yaml | 39 +++++ widgets.yaml | 20 +++ 10 files changed, 516 insertions(+) create mode 100644 .gitignore create mode 100644 bookmarks.yaml create mode 100644 custom.css create mode 100644 custom.js create mode 100644 docker.yaml create mode 100644 kubernetes.yaml create mode 100644 proxmox.yaml create mode 100644 services.yaml create mode 100644 settings.yaml create mode 100644 widgets.yaml diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..2709865 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +.env +logs/ +.claude/ diff --git a/bookmarks.yaml b/bookmarks.yaml new file mode 100644 index 0000000..21a379d --- /dev/null +++ b/bookmarks.yaml @@ -0,0 +1,16 @@ +--- +# For configuration options and examples, please see: +# https://gethomepage.dev/configs/bookmarks + +- Developer: + - Github: + - abbr: GH + href: https://github.com/ + - Proxmox Docs: + - abbr: PVE + href: https://pve.proxmox.com/pve-docs/ + +- Entertainment: + - YouTube: + - abbr: YT + href: https://youtube.com/ diff --git a/custom.css b/custom.css new file mode 100644 index 0000000..e69de29 diff --git a/custom.js b/custom.js new file mode 100644 index 0000000..e69de29 diff --git a/docker.yaml b/docker.yaml new file mode 100644 index 0000000..2f4c4e3 --- /dev/null +++ b/docker.yaml @@ -0,0 +1,10 @@ +--- +# For configuration options and examples, please see: +# https://gethomepage.dev/configs/docker/ + +# my-docker: +# host: 127.0.0.1 +# port: 2375 + +# my-docker: +# socket: /var/run/docker.sock diff --git a/kubernetes.yaml b/kubernetes.yaml new file mode 100644 index 0000000..aca6e82 --- /dev/null +++ b/kubernetes.yaml @@ -0,0 +1,2 @@ +--- +# sample kubernetes config diff --git a/proxmox.yaml b/proxmox.yaml new file mode 100644 index 0000000..23dc60a --- /dev/null +++ b/proxmox.yaml @@ -0,0 +1,5 @@ +--- +pve: + url: https://192.168.30.215:8006 + token: "{{HOMEPAGE_VAR_PROXMOX_USERNAME}}" + secret: "{{HOMEPAGE_VAR_PROXMOX_PASSWORD}}" diff --git a/services.yaml b/services.yaml new file mode 100644 index 0000000..ff51868 --- /dev/null +++ b/services.yaml @@ -0,0 +1,421 @@ +--- +# For configuration options and examples, please see: +# https://gethomepage.dev/configs/services/ + +- Infrastruktur: + - Proxmox VE: + icon: proxmox.svg + href: https://192.168.30.215:8006 + description: Proxmox Virtual Environment + widget: + type: proxmox + url: https://192.168.30.215:8006 + username: "{{HOMEPAGE_VAR_PROXMOX_USERNAME}}" + password: "{{HOMEPAGE_VAR_PROXMOX_PASSWORD}}" + fields: ["vms", "lxc", "resources.cpu", "resources.mem"] + + - Proxmox Storage local: + icon: proxmox.svg + href: https://192.168.30.215:8006 + description: Proxmox Storage (local) + widget: + type: customapi + url: https://192.168.30.215:8006/api2/json/nodes/ms02-ultra/storage/local/status + headers: + Authorization: "{{HOMEPAGE_VAR_PROXMOX_PVE_AUTH}}" + mappings: + - field: data.avail + label: Frei + format: bytes + - field: data.used + label: Belegt + format: bytes + - field: data.total + label: Gesamt + format: bytes + - field: data.used_fraction + label: Auslastung + format: percent + scale: 100 + + - Proxmox Storage local-zfs: + icon: proxmox.svg + href: https://192.168.30.215:8006 + description: Proxmox Storage (local-zfs) + widget: + type: customapi + url: https://192.168.30.215:8006/api2/json/nodes/ms02-ultra/storage/local-zfs/status + headers: + Authorization: "{{HOMEPAGE_VAR_PROXMOX_PVE_AUTH}}" + mappings: + - field: data.avail + label: Frei + format: bytes + - field: data.used + label: Belegt + format: bytes + - field: data.total + label: Gesamt + format: bytes + - field: data.used_fraction + label: Auslastung + format: percent + scale: 100 + + - Proxmox Storage local-zfs-2tb: + icon: proxmox.svg + href: https://192.168.30.215:8006 + description: Proxmox Storage (local-zfs-2tb) + widget: + type: customapi + url: https://192.168.30.215:8006/api2/json/nodes/ms02-ultra/storage/local-zfs-2tb/status + headers: + Authorization: "{{HOMEPAGE_VAR_PROXMOX_PVE_AUTH}}" + mappings: + - field: data.avail + label: Frei + format: bytes + - field: data.used + label: Belegt + format: bytes + - field: data.total + label: Gesamt + format: bytes + - field: data.used_fraction + label: Auslastung + format: percent + scale: 100 + + - Unifi: + icon: unifi.svg + href: https://192.168.30.254/network/default/dashboard + description: Unifi Network Controller + widget: + type: unifi + url: https://192.168.30.254 + key: "{{HOMEPAGE_VAR_UNIFI_KEY}}" + + - Adguard: + icon: adguard-home.svg + href: http://192.168.30.244 + description: AdGuard Home + widget: + type: adguard + url: http://192.168.30.244 + username: "{{HOMEPAGE_VAR_ADGUARD_USERNAME}}" + password: "{{HOMEPAGE_VAR_ADGUARD_PASSWORD}}" + + - Synology: + icon: synology.svg + href: https://ds1520.vogt.de.com/ + description: Synology DS1520 + widget: + type: diskstation + url: https://ds1520.vogt.de.com + username: "{{HOMEPAGE_VAR_SYNOLOGY_USERNAME}}" + password: "{{HOMEPAGE_VAR_SYNOLOGY_PASSWORD}}" + volume: volume_1 + + - NetBird: + icon: netbird.svg + href: https://netbird.vogt.de.com/ + description: NetBird VPN + + - Proxmox Backup Server: + icon: proxmox.svg + href: https://192.168.30.216:8007 + description: Proxmox Backup Server + +- Smarthome: + - Home Assistant: + icon: home-assistant.svg + href: https://haos.vogt.de.com/ + description: Home Assistant + + - Homematic: + icon: homematic-ip.png + href: http://192.168.30.206/ + description: Homematic + + - Zigbee Coordinator: + icon: https://shop.codm.de/media/b5/87/c3/1694098129/codm-dark.svg?ts=1694098129 + href: http://192.168.30.80 + description: Zigbee Coordinator + + - NodeRed: + icon: node-red.svg + href: http://192.168.30.207:1880/ + description: NodeRed + +- Monitoring: + - Beszel: + icon: beszel.svg + href: https://beszel.vogt.de.com + description: Beszel Monitoring + widget: + type: beszel + url: https://beszel.vogt.de.com + username: "{{HOMEPAGE_VAR_BESZEL_USERNAME}}" + password: "{{HOMEPAGE_VAR_BESZEL_PASSWORD}}" + version: 2 + + - Uptime Kuma: + icon: uptime-kuma.svg + href: https://uptimekuma.vogt.de.com/dashboard + description: Uptime Kuma + widget: + type: uptimekuma + url: https://uptimekuma.vogt.de.com + slug: home-lab + + - Patchmon: + icon: http://192.168.30.161:3000/assets/logo_square_default.svg + href: http://192.168.30.161:3000 + description: PatchMon Statistics + widget: + type: customapi + url: http://192.168.30.161:3000/api/v1/gethomepage/stats + headers: + Authorization: "{{HOMEPAGE_VAR_PATCHMON_AUTH}}" + mappings: + - field: total_hosts + label: Total Hosts + - field: hosts_needing_updates + label: Needs Updates + - field: security_updates + label: Security Updates + +- Docker: + - Proxmox Dockhand: + icon: dockhand.png + href: http://192.168.30.141:3000 + description: Proxmox Dockhand + + - MediaServer Dockge: + icon: dockge.png + href: http://192.168.30.135:5001 + description: MediaServer Dockge + + - SeaFile Dockge: + icon: dockge.png + href: http://192.168.30.159:5001 + description: SeaFile Dockge + +- Apps (SSO): + - Authentik: + icon: authentik.svg + href: https://sso.vogt.de.com/ + description: Authentik + + - OpenWebUI: + icon: open-webui.svg + href: https://openwebui.vogt.de.com/ + description: OpenWebUI + + - SeaFile: + icon: seafile.svg + href: https://seafile.vogt.de.com + description: SeaFile + + - Paperless-NGX: + icon: paperless-ngx.svg + href: https://paperless.vogt.de.com + description: Paperless-NGX + + - YouTrack: + icon: jetbrains-youtrack.svg + href: https://youtrack.vogt.de.com/ + description: YouTrack + + - Gitea: + icon: gitea.svg + href: https://git.vogt.de.com + description: Gitea + + - ByteStash: + icon: bytestash.svg + href: https://bytestash.vogt.de.com/ + description: ByteStash + + - KitchenOwl: + icon: kitchenowl.svg + href: https://kitchenowl.vogt.de.com + description: KitchenOwl + + - Mail-Archiver: + icon: mail-archiver.svg + href: https://mail-archiver.vogt.de.com + description: Mail-Archiver + + - Outline: + icon: outline.svg + href: https://outline.vogt.de.com + description: Outline + + - PgAdmin: + icon: pgadmin.svg + href: https://pgadmin.vogt.de.com/ + description: PgAdmin + + - Guacamole: + icon: guacamole.svg + href: https://guacamole.vogt.de.com/guacamole/ + description: Guacamole + + - Bookstack: + icon: bookstack.svg + href: https://bookstack.vogt.de.com + description: Bookstack + + - Wallos: + icon: wallos.png + href: https://wallos.vogt.de.com + description: Wallos + + - FreshRSS: + icon: freshrss.svg + href: https://freshrss.vogt.de.com/ + description: FreshRSS + + - IT-Tools: + icon: it-tools.svg + href: https://it-toolz.vogt.de.com + description: IT-Tools + +- Apps: + - n8n: + icon: n8n.svg + href: https://n8n.vogt.de.com/ + description: n8n + + - Vaultwarden: + icon: vaultwarden.svg + href: https://vaultwarden.vogt.de.com/ + description: Vaultwarden + + - Stirling-PDF: + icon: stirling-pdf.svg + href: https://mypdf.vogt.de.com + description: Stirling-PDF + + - Dispatcharr: + icon: dispatcharr.svg + href: http://192.168.30.160:9191 + description: Dispatcharr + + - NTFY: + icon: ntfy.svg + href: https://ntfy.vogt.de.com + description: NTFY + + - searXNG: + icon: searxng.svg + href: http://192.168.30.185:8888 + description: searXNG + + - MariaDB PhpMyAdmin: + icon: phpmyadmin.svg + href: http://192.168.30.187/phpMyAdmin/ + description: MariaDB PhpMyAdmin + + - Adminer: + icon: adminer.png + href: http://192.168.30.186/adminer/ + description: Adminer + + - TasmoBackup: + icon: tasmoadmin.png + href: http://192.168.30.141:8259 + description: TasmoBackup + +- Media Server: + - Homepage: + icon: homepage.png + href: http://192.168.30.135 + description: Homepage + + - FileBot Media Browser: + icon: filebot.svg + href: http://192.168.30.135:8090 + description: FileBot Media Browser + + - SabNZBd: + icon: sabnzbd.svg + href: http://192.168.30.135:8080 + description: SabNZBd + + - qBittorrent: + icon: qbittorrent.svg + href: http://192.168.30.135:8081 + description: qBittorrent + + - jDownloader: + icon: jdownloader.svg + href: http://192.168.30.135:8082/ + description: jDownloader + + - meTube: + icon: metube.svg + href: http://192.168.30.135:8083 + description: meTube + + - FileBot: + icon: filebot.svg + href: http://192.168.30.135:5800 + description: FileBot + + - Krusader: + icon: krusader.svg + href: "http://192.168.30.135:6081/vnc.html?resize=remote&host=192.168.30.135&port=6081&&autoconnect=1" + description: Krusader + + - HandBrake: + icon: handbrake.svg + href: http://192.168.30.135:7803 + description: HandBrake + + - MakeMKV: + icon: makemkv.png + href: http://192.168.30.135:5820 + description: MakeMKV + + - MediaElch: + icon: https://www.kvibes.de/img/mediaelch/icon.png + href: https://192.168.30.135:3001 + description: MediaElch + + - Unmanic: + icon: unmanic.png + href: http://192.168.30.135:8899/unmanic/ui/dashboard/ + description: Unmanic + + - MediaInfo: + icon: https://upload.wikimedia.org/wikipedia/commons/1/19/MediaInfo_Logo.svg + href: http://192.168.30.135:5810 + description: MediaInfo + + - MKVToolNix: + icon: mkvtoolnix.png + href: http://192.168.30.135:5830 + description: MKVToolNix + +- Media: + - Jellyfin: + icon: jellyfin.svg + href: https://jellyfin.vogt.de.com/ + description: Jellyfin + + - Emby: + icon: emby.svg + href: https://emby.vogt.de.com/ + description: Emby + + - Sonarr: + icon: sonarr.svg + href: https://sonarr.vogt.de.com/ + description: Sonarr + + - Seerr: + icon: overseerr.svg + href: https://os.vogt.de.com + description: Seerr diff --git a/settings.yaml b/settings.yaml new file mode 100644 index 0000000..e550a06 --- /dev/null +++ b/settings.yaml @@ -0,0 +1,39 @@ +--- +# For configuration options and examples, please see: +# https://gethomepage.dev/configs/settings/ + +title: Homelab +theme: dark +color: slate +headerStyle: boxed +target: _blank + +layout: + Infrastruktur: + style: row + columns: 4 + Smarthome: + style: row + columns: 4 + Monitoring: + style: row + columns: 4 + Docker: + style: row + columns: 4 + Apps (SSO): + style: row + columns: 6 + Apps: + style: row + columns: 6 + Media Server: + style: row + columns: 6 + Media: + style: row + columns: 6 + +providers: + openweathermap: openweathermapapikey + weatherapi: weatherapiapikey diff --git a/widgets.yaml b/widgets.yaml new file mode 100644 index 0000000..488d3e6 --- /dev/null +++ b/widgets.yaml @@ -0,0 +1,20 @@ +--- +# For configuration options and examples, please see: +# https://gethomepage.dev/configs/info-widgets/ + +- resources: + cpu: true + memory: true + disk: / + +- openmeteo: + label: Düsseldorf + latitude: 51.2115 + longitude: 6.7474 + timezone: Europe/Berlin + units: metric + cache: 5 + +- search: + provider: duckduckgo + target: _blank