Infrastructure Overview
Quick reference for all hardware and services in the homelab.
Machines
| Name | Role | OS | IP | Notes |
|---|---|---|---|---|
| Atlas | Primary workstation | Windows 11 | local (DHCP) | Office; Battery Backup 1 (APC) |
| Nexus | Docker host | Ubuntu Server | 192.168.1.226 | HP Z440; snap Docker; Battery Backup 2 (CyberPower) |
| PVE | Hypervisor | Proxmox VE | 192.168.1.227 | HP ProDesk thin client; Battery Backup 1 (APC) |
| PBS | Backup server | Proxmox Backup Server | 192.168.1.223 | HP EliteDesk thin client; Battery Backup 1 (APC) |
| Hyperion | NAS / file storage | Synology DSM | 192.168.1.217 | DS1525+; file storage only, no Docker; Battery Backup 1 (APC) |
SSH: matt@192.168.1.226 (Nexus), root@192.168.1.227 (PVE)
Network
Subnet: 192.168.1.0/24 — flat (single subnet). VLAN segmentation planned.
| Device | Location | Type | Notes |
|---|---|---|---|
| Verizon router | Utility room | Router | Internet gateway |
| Ubiquiti EdgeSwitch 8 | Utility room | Managed, PoE | PoE cameras; Battery Backup 3 (CyberPower) |
| TP-Link TL-SG116 | Office | Unmanaged | Connects Atlas, Nexus, PVE, PBS, Hyperion; must stay on Battery Backup 1 |
| Ubiquiti NanoHD | Office | WiFi AP | Installed; VLAN integration planned |
Key Services
Nexus (192.168.1.226) — Docker containers via snap
| Name | URL | Port | Notes |
|---|---|---|---|
| Komodo | http://192.168.1.226:9120 | 9120 | Stack manager + webhook receiver |
| Home Assistant | http://192.168.1.226:8123 | 8123 | network_mode: host; ConBee II at /dev/ttyACM0 |
| Dashy | http://192.168.1.226:4000 | 4000 | Dashboard |
| Bookstack | http://192.168.1.226:6875 | 6875 | Wiki (migration target: Forgejo wiki) |
| Tandoor | http://192.168.1.226:8900 | 8900 | Recipe manager |
| Pinchflat | http://192.168.1.226:8945 | 8945 | YouTube downloader |
| FreshRSS | http://192.168.1.226:8080 | 8080 | RSS reader |
| Frigate | http://192.168.1.226:5000 | 5000 | Camera NVR; Coral USB TPU; 2 cameras |
| Wyze Bridge | http://192.168.1.226:5050 | 5050/8556 | RTSP bridge for Wyze cams |
| Mosquitto | 192.168.1.226:1883 | 1883 | MQTT broker (Frigate → HA) |
PVE LXC Containers
| LXC ID | Hostname | IP | Service | URL |
|---|---|---|---|---|
| — | forgejo | 192.168.1.240 | Forgejo (git forge) | http://192.168.1.240:3000 |
| 101 | jellyfin | 192.168.1.250 | Jellyfin | http://192.168.1.250:8096 |
| 113 | dispatcharr | 192.168.1.254 | Dispatcharr (IPTV/EPG) | http://192.168.1.254:9191 |
| — | paperless | — | Paperless-ngx | — |
| — | audiobookshelf | 192.168.1.201 | Audiobookshelf | http://192.168.1.201:13378 |
| — | actual | 192.168.1.209 | Actual Budget | https://192.168.1.209:5006 |
| — | plex | 192.168.1.207 | Plex | http://192.168.1.207:32400/web |
| — | beszel | 192.168.1.189 | Beszel (monitoring) | http://192.168.1.189:8090 |
| — | adguard | 192.168.1.86 | AdGuard Home (DNS) | http://192.168.1.86 |
| — | pihole | 192.168.1.220 | Pi-hole (DNS) | http://192.168.1.220/admin |
Proxmox UIs
| Service | URL |
|---|---|
| Proxmox VE | https://192.168.1.227:8006 |
| Proxmox Backup Server | https://192.168.1.223:8007 |
| Hyperion (DSM) | http://192.168.1.217:5000 |
Docker on Nexus
- Installed via snap — always
docker compose(space). Neverdocker-compose(hyphen). - Container data:
/mnt/server/containers/ - Compose repo:
/home/matt/repos/homelab-docker - Home Assistant uses a compose file at
homeassistant/docker-compose.yamlwithnetwork_mode: hostandprivileged: true. No port mapping — HA binds directly to host port 8123.
Managed stacks (auto-deployed via Komodo on main push): dashy, bookstack, tandoor, homeassistant, pinchflat.
See Automation Pipeline for the Renovate → Komodo deploy flow.
LXC Containers on PVE
LXC containers run Docker via apt (not snap). Use docker compose (space) inside them.
Komodo Periphery runs as a Docker container in each managed LXC, connecting outbound to Komodo Core at ws://192.168.1.226:9120.
| LXC | Notes |
|---|---|
| Forgejo | Runs as a systemd service (not Docker). SQLite DB. Nightly PBS backup. |
| Jellyfin (101) | Live TV via Dispatcharr HDHomeRun emulation. |
| Dispatcharr (113) | Docker inside LXC. Komodo Stack dispatcharr. Compose: dispatcharr/docker-compose.yml. |
| Plex | Apt-managed (plexmediaserver package). |
| Paperless-ngx | Document management. |
| Audiobookshelf | Audiobook / podcast server. |
| Actual Budget | Budget manager. HTTPS self-signed cert. |
| Beszel | Server monitoring agent hub. |
| AdGuard Home | Primary DNS + ad blocking. |
UPS / Power
| UPS | Location | Master | Connected Equipment |
|---|---|---|---|
| APC BE750G (Battery Backup 1) | Office | PVE | Atlas, Nexus, PVE, PBS, Hyperion, TP-Link switch |
| CyberPower 1500VA (Battery Backup 2) | Office | Nexus | Nexus only |
| CyberPower 1500VA (Battery Backup 3) | Utility room | — | EdgeSwitch 8, Verizon router |
NUT architecture: PVE is master for APC; PBS, Hyperion, and Atlas (WinNUT) are slaves via apcups@192.168.1.227:3493. Nexus is master for CyberPower.
APC beeper is disabled via NUT. TP-Link office switch must remain on Battery Backup 1.
Automation
Infrastructure
Services
- Dashy
- Bookstack
- Tandoor
- Home Assistant
- Pinchflat
- FreshRSS
- Frigate
- Wyze-Bridge
- Mosquitto
- Dispatcharr
- Proxmox LXC Services
Operations
- How to Update Apps
- Backup & Restore Strategy
- Maintenance Schedule
- Useful Commands
- Restore Proxmox Containers
- NAS NFS Share for LXC
- SSH Public Key onto Nexus