- PFI-UDMSE port 6 override: native nh3-mgmt, tagged VLANs blocked (was forward all / native default). Reservation nh3-pve-amt -> 10.100.250.61. - nh3-pve: arp_ignore=8 / arp_announce=2 on enp88s0 (now on vmbr0's untagged L2) so the host never answers ARP for 10.100.250.60 with the AMT port's MAC. - DNS nh3-pve-amt.nh3.internal -> 10.100.250.61. - Homepage: NH3-PVE-AMT card under Infra - NH3 (no siteMonitor/ping: AMT drops ICMP and its legacy-renegotiation TLS fails Homepage's fetch). - AMT keeps its old 10.100.0.151 lease until rebind/expiry (~1920-2224 PT 2026-09-26); it does not re-DHCP on a VLAN change or link drop (measured).
280 lines
12 KiB
YAML
280 lines
12 KiB
YAML
---
|
||
# https://gethomepage.dev/latest/configs/services
|
||
#
|
||
# Groups are ordered by settings.yaml `layout`. This file holds the manual
|
||
# entries — infrastructure, BMCs, off-Docker endpoints, and a handful of
|
||
# well-known internal service URLs. Docker-labeled stacks auto-populate
|
||
# their own groups through the providers in docker.yaml, so most app
|
||
# entries don't need to appear here.
|
||
|
||
# The Monitoring group is fully Docker-auto-discovered — Beszel, Dozzle,
|
||
# Backrest and Uptime Kuma all carry homepage.group=Monitoring on their
|
||
# compose files. There is deliberately no manual block here.
|
||
#
|
||
# Uptime Kuma used to be listed manually here AND labelled
|
||
# homepage.group=Apps on its container, so it rendered twice — once in
|
||
# Monitoring without its widget, once in Apps with it. Fixed 2026-08-18 by
|
||
# deleting the manual entry and moving the container's label to Monitoring
|
||
# (stacks/uptimekuma/). This is the exact failure the warning below
|
||
# describes; it survived the 2026-08-17 audit because a duplicate reads as
|
||
# two plausible cards rather than as an error.
|
||
|
||
- Apps:
|
||
# Manual entry — the hermes-gateway bus seat status page (read-only,
|
||
# user-level systemd service on nh3-dev; same discovery caveat as the Booth).
|
||
# Renamed from 'infra-hermes seat' 2026-09-24 per operator handle-split ruling.
|
||
- hermes-gateway seat:
|
||
href: http://10.100.10.50:8766/
|
||
icon: mdi-bus-alert
|
||
siteMonitor: http://10.100.10.50:8766/healthz
|
||
description: althing bus seat live status — route/pulse/gateway/unread (nh3-dev)
|
||
# Manual entry — the Booth is a user-level systemd service on nh3-dev
|
||
# (not a Docker-labeled stack), so it can't auto-discover; list it here.
|
||
- The Booth:
|
||
href: http://10.100.10.50:8090/
|
||
icon: mdi-filmstrip
|
||
siteMonitor: http://10.100.10.50:8090/healthz
|
||
description: Media drop + upload-for-pickup + the standing agent link board — nh3-dev, 24h TTL except kept boards
|
||
# Manual entry — talk is a Docker stack on nh3-dev, which is NOT one of the
|
||
# hosts in docker.yaml, so Homepage cannot discover it from labels.
|
||
# Icon: commissioned mark, copied into the images mount (see CLAUDE.md note
|
||
# about restarting Homepage after adding a file there).
|
||
- talk:
|
||
href: https://talk.nh3.phasefinal.com:8092/
|
||
icon: /images/talk.svg
|
||
siteMonitor: https://talk.nh3.phasefinal.com:8092/
|
||
description: TTS chat surface — type or speak, a fleet voice answers
|
||
# Manual entry — SVOS is a user-level systemd service on nh3-dev
|
||
# (svos.service), and nh3-dev is not one of the hosts in docker.yaml, so
|
||
# Homepage cannot discover it from labels. Requested by svos-dev relaying
|
||
# the operator, 2026-09-22.
|
||
# ⚠ siteMonitor is "/" ON PURPOSE. There is NO /api/health on this service —
|
||
# that path 404s, and a monitor pointed at it would show the board
|
||
# permanently down while it serves perfectly. The root returns 200 and the
|
||
# SPA. (svos-dev hit exactly this reading its own logs; verified here.)
|
||
- The High Seat:
|
||
href: http://10.100.10.50:8770/
|
||
icon: mdi-eye-outline
|
||
siteMonitor: http://10.100.10.50:8770/
|
||
description: SVOS mission control — live fleet telemetry across Claude Code sessions, and the conversation with Miranda
|
||
# Manual entry — WhereTF is a user-level systemd service on nh3-dev (Bun,
|
||
# like the Booth), so Homepage can't auto-discover it.
|
||
- WhereTF:
|
||
href: http://10.100.10.50:8093/
|
||
icon: mdi-magnify-scan
|
||
siteMonitor: http://10.100.10.50:8093/healthz
|
||
description: Photograph drawers; ask where the f X is, or where a new thing should go — nh3-dev, LAN only
|
||
- The Henge:
|
||
href: http://park.phasefinal.com:8420/
|
||
icon: mdi-clipboard-check
|
||
siteMonitor: http://park.phasefinal.com:8420/healthz
|
||
description: Durable needs-attention / idea parking (stonehenge-park) — ana-docker
|
||
# Was its own one-card `Games` group, which burned a full 4-wide row on a
|
||
# single panel. It is an app you open; this is where apps you open live.
|
||
- Pterodactyl:
|
||
href: http://10.250.50.55/
|
||
icon: mdi-gamepad-square
|
||
siteMonitor: http://10.250.50.55
|
||
description: Game server panel
|
||
|
||
# The AI tab is otherwise fully Docker-auto-discovered. Each service carries a
|
||
# homepage.group=AI - <role> label on its compose file (AI - Gateways & Chat,
|
||
# AI - Studios, AI - Inference, AI - Eval & Retrieval, AI - Speech (TTS),
|
||
# AI - Audio Tools, AI - Dormant). Tab assignment, group order, columns and
|
||
# collapse state live in settings.yaml. Do not add a labelled container here as
|
||
# well or it renders twice. To move a service between AI groups, change the
|
||
# label on its compose file and recreate the container — labels are read at
|
||
# creation, so `restart` will not do it.
|
||
- AI - Studios:
|
||
# Manual entry — Voice Design Studio is a user-level systemd service on
|
||
# irv-ml1, not a Docker-labeled stack, so it cannot auto-discover. It sits
|
||
# with the other studios rather than in Apps: it is a workspace you open and
|
||
# produce something in, which is exactly what that group is for.
|
||
- Voice Design Studio:
|
||
href: http://irv-ml1.nh3.internal:8216/
|
||
icon: mdi-microphone
|
||
siteMonitor: http://irv-ml1.nh3.internal:8216/health
|
||
description: Mint, audition and keeper-mark synthetic fleet voices — irv-ml1, CPU-only
|
||
|
||
- Media:
|
||
- Plex:
|
||
href: http://10.0.50.56:32400
|
||
icon: si-plex
|
||
siteMonitor: http://10.0.50.56:32400
|
||
description: Media Server (esh-nas-pve 10.0.50.56)
|
||
widget:
|
||
type: plex
|
||
url: http://10.0.50.56:32400
|
||
key: '{{HOMEPAGE_VAR_PLEX_KEY}}'
|
||
- Jellyfin:
|
||
href: http://10.0.50.57:8096
|
||
icon: si-jellyfin
|
||
siteMonitor: http://10.0.50.57:8096
|
||
description: Media Server (esh-nas-pve 10.0.50.57)
|
||
widget:
|
||
type: jellyfin
|
||
url: http://10.0.50.57:8096
|
||
key: '{{HOMEPAGE_VAR_JELLYFIN_KEY}}'
|
||
enableBlocks: true
|
||
|
||
- Infra - ANA:
|
||
- ANA-Firewall:
|
||
href: https://10.250.250.1
|
||
icon: mdi-wall-fire
|
||
siteMonitor: https://10.250.250.1
|
||
description: ana-gw FortiGate-80F, FortiOS 7.2.10 (ana-fw.phasefinal.com)
|
||
- PFI-r750xs-iDRAC:
|
||
href: https://10.250.250.30/
|
||
siteMonitor: https://10.250.250.30/
|
||
icon: si-dell
|
||
description: iDRAC (Dell R750xs) — OOB for pfi-pve @ 10.250.250.31
|
||
- PFI-PVE:
|
||
href: https://10.250.250.31:8006/
|
||
siteMonitor: https://10.250.250.31:8006/
|
||
icon: si-proxmox
|
||
description: Proxmox hypervisor (pfi-pve)
|
||
- ANA-NAS:
|
||
href: https://10.250.50.50:9090/
|
||
siteMonitor: https://10.250.50.50:9090/
|
||
icon: mdi-nas
|
||
description: Debian NAS (Cockpit)
|
||
- ANA-FileBot:
|
||
ping: 10.250.50.53
|
||
icon: mdi-sync-circle
|
||
description: File-task VM
|
||
- PFI-VM-Docker:
|
||
href: http://10.250.50.70:5001
|
||
icon: si-docker
|
||
siteMonitor: http://10.250.50.70:5001
|
||
description: Docker VM (ana-docker, Dockge at :5001)
|
||
- PFI-ANA-ML2:
|
||
ping: 10.251.50.54
|
||
icon: mdi-brain
|
||
description: GPU host (bare-metal)
|
||
- PFI-ANA-ML2 BMC:
|
||
href: https://10.250.250.50
|
||
icon: mdi-brain
|
||
siteMonitor: https://10.250.250.50
|
||
description: BMC (fv-ml1)
|
||
- SFsrv-ANA:
|
||
href: https://10.250.250.115:8006
|
||
icon: si-proxmox
|
||
siteMonitor: https://10.250.250.115:8006
|
||
description: Proxmox (SureFire tenant hypervisor at PFI colo)
|
||
- SF-R630-iDRAC:
|
||
href: https://10.250.250.110/
|
||
icon: si-dell
|
||
ping: 10.250.250.110
|
||
description: Dell R630 iDRAC (SureFire tenant hardware)
|
||
- PBS-ANA:
|
||
href: https://10.250.50.90:8007/
|
||
icon: mdi-backup-restore
|
||
siteMonitor: https://10.250.50.90:8007/
|
||
description: Proxmox Backup Server — primary (fleet vzdump target)
|
||
|
||
- Infra - NH3:
|
||
# NH3-Firewall (Fortigate 101F at 10.100.250.1) retired 2026-04-21,
|
||
# replaced by PFI-UDMSE (UniFi UDM Pro SE at 10.100.0.1, below).
|
||
# NH3-SW1 (Mikrotik CRS328-24P-4S+ at 10.100.250.2) retired from
|
||
# homepage 2026-04-22.
|
||
- PFI-UDMSE:
|
||
href: https://10.100.0.1
|
||
icon: si-ubiquiti
|
||
siteMonitor: https://10.100.0.1
|
||
description: UniFi Dream Machine Pro SE — gateway + controller (NH3 edge)
|
||
- NH3-NAS:
|
||
href: https://10.100.50.50:5001
|
||
icon: mdi-nas
|
||
siteMonitor: https://10.100.50.50:5001
|
||
description: Synology RS2418+ DSM (restic target + VM storage)
|
||
- NH3-PVE:
|
||
href: https://10.100.250.60:8006/
|
||
siteMonitor: https://10.100.250.60:8006/
|
||
icon: si-proxmox
|
||
description: Proxmox hypervisor (nh3-pve)
|
||
# Intel AMT on nh3-pve's I226-LM (UDM port 6, nh3-mgmt, DHCP reservation).
|
||
# No siteMonitor/ping on purpose: AMT drops ICMP, and its TLS needs legacy
|
||
# renegotiation, which Homepage's fetch refuses, so a monitor reads DOWN forever.
|
||
# Remote screen needs MeshCommander, not this page (servers/nh3-pve/README.md).
|
||
- NH3-PVE-AMT:
|
||
href: https://10.100.250.61:16993/
|
||
icon: si-intel
|
||
description: Intel AMT (vPro) — OOB for nh3-pve; login admin / MEBx password
|
||
- NH3-VM-Docker:
|
||
href: http://10.100.50.40:5001
|
||
icon: si-docker
|
||
siteMonitor: http://10.100.50.40:5001
|
||
description: Docker VM (nh3-docker, Dockge at :5001)
|
||
- NH3-ExtDev:
|
||
ping: 10.100.50.42
|
||
icon: mdi-laptop
|
||
description: Manager / external-dev box (nh3-extdev, Debian 13) — successor to the retired nh3-ansible
|
||
- PBS-NH3:
|
||
href: https://10.100.50.90:8007/
|
||
icon: mdi-backup-restore
|
||
siteMonitor: https://10.100.50.90:8007/
|
||
description: Proxmox Backup Server — DR mirror (pulls from PBS-ANA)
|
||
|
||
- Infra - IRV:
|
||
# Irvine site — irv-ml1 folded into the headscale mesh 2026-09-06; the
|
||
# old 10.100.79.0/24 WG tunnel space is dormant. These cards resolve via
|
||
# irv-ml1.nh3.internal (-> 10.6.110.50) and light up over the mesh.
|
||
- IRV-ML1:
|
||
ping: irv-ml1.nh3.internal
|
||
icon: mdi-brain
|
||
description: GPU host (bare-metal, RTX 3090 + RTX A6000, native AI stacks)
|
||
- IRV-ML1-Dockge:
|
||
href: http://irv-ml1.nh3.internal:5001
|
||
icon: si-docker
|
||
siteMonitor: http://irv-ml1.nh3.internal:5001
|
||
description: Docker management (irv-ml1)
|
||
|
||
- Infra - ESH:
|
||
- ESH-UDMPM:
|
||
href: https://10.0.0.1
|
||
icon: si-ubiquiti
|
||
siteMonitor: https://10.0.0.1
|
||
description: UniFi Dream Machine Pro Max — gateway + controller (ESH)
|
||
- ESH-Firewall:
|
||
href: https://10.0.250.1
|
||
icon: mdi-wall-fire
|
||
siteMonitor: https://10.0.250.1
|
||
description: esh-gw
|
||
- Brother Printer:
|
||
href: http://10.0.90.125/
|
||
icon: mdi-printer
|
||
siteMonitor: http://10.0.90.125/
|
||
description: Brother (ESH)
|
||
- ESH-NAS:
|
||
href: https://10.0.50.50:9090
|
||
icon: mdi-nas
|
||
siteMonitor: https://10.0.50.50:9090
|
||
description: NAS share manager (Cockpit)
|
||
- ESH-PVE:
|
||
href: https://10.0.250.35:8006
|
||
siteMonitor: https://10.0.250.35:8006
|
||
icon: si-proxmox
|
||
description: Proxmox hypervisor (esh-pve)
|
||
- ESH-PVE-NAS:
|
||
href: https://10.0.50.55:8006
|
||
siteMonitor: https://10.0.50.55:8006
|
||
icon: si-proxmox
|
||
description: Proxmox hypervisor (esh-pve-nas, storage/media)
|
||
- ESH-FileBot:
|
||
ping: 10.0.50.70
|
||
icon: mdi-sync-circle
|
||
description: Restic / file-sync VM (esh-nas-pve) — role TBC
|
||
- ESH-VM-Docker:
|
||
href: http://10.0.50.45:5001
|
||
icon: si-docker
|
||
siteMonitor: http://10.0.50.45:5001
|
||
description: Docker VM (esh-docker-vm, Dockge at :5001)
|
||
|
||
# Service Networking group is now fully Docker-auto-discovered (Traefik ×2,
|
||
# AdGuard ×2, Dockge ×5, rest-server-ana, mailrise, etc. all carry
|
||
# homepage.group=Service Networking on their compose files). Position and
|
||
# layout live in settings.yaml. Do not add entries here or they'll double up.
|
||
#
|
||
# Mosquitto (ESH) note: still labeled Apps on its compose; once moved to
|
||
# Service Networking via a label change on esh-docker-vm, it auto-populates.
|