Lenovo ThinkCentre M70Q Tiny (Core i5-10500T Β· 16 GB RAM Β· 256 GB NVMe)
A single-node Proxmox VE lab running VMs, LXC containers, and a small k3s cluster.
Goal β self-host as many daily-use services as possible, document everything, and keep it reproducible.
| Layer | Highlights |
|---|---|
| Hypervisor | Proxmox VE 8 (single node) |
| LAN | 192.168.8.0/24 on vmbr0 (1 GbE) |
| Lab Overlay | 192.168.50.0/24 on vmbr50 (k3s, NAT) |
| Storage | NVMe system SSD (250 GB) β’ 2 TB HDD data pool (media/data) β’ USB hub: 1β―TB HOT (Immich+TM), 1β―TB COLD (rsync snapshots) β’ 2Γ USB flash for configs |
| Core Services | pfSense FW β’ AdGuard Home β’ Nginx Proxy Mgr β’ Prometheus + Grafana + Alertmanager β’ Jellyfin stack β’ Immich β’ SMB share |
| Helpful Tools | Glance Startpage β’ ConvertX β’ FileBrowser |
| Automation | Docker Compose for apps β’ Proxmox vzdump + rsync backups |
| Power / UPS | APC Back-UPS BX1200MI + apcupsd (onβbattery/offβbattery hooks, Telegram notify, Flask JSON API) |
my-homelab-docs/
βββ README.md
βββ Network & Infrastructure/
β βββ adguard-home.md
β βββ nginx-proxy-manager.md
β βββ pfsense.md
β βββ proxmox.md
βββ helpful-tools/
β βββ convertx.md
β βββ glance.md
β βββ glance.yml
β βββ k3s-cluster.md
βββ media-playback/
β βββ download-automation.md
β βββ download-automation.yml
β βββ jellyfin-jellyser.md
β βββ jellyfin-jellyser.yml
βββ monitoring-observability/
β βββ promtail/
β β βββ disk-config.yml
β β βββ prom-graf-config.yml
β β βββ proxmox-config.yml
β βββ alert-rules.yml
β βββ grafana.md
β βββ loki-config.yml
β βββ install_node_exporter.sh
β βββ prometheus-alertmanager.md
β βββ uptime_kuma.md
βββ storage-files/
β βββ filebrowser.md
β βββ filebrowser.yml
β βββ immich.md
β βββ immich.yml
β βββ samba.md
β βββ smb.conf
β βββ timemachine.md
βββ power-backup/ # UPS (apcupsd) docs, hooks, JSON API
βββ scripts/ # Host & container automation (hotβcold backups, etc.)
| Item | Method | Frequency |
|---|---|---|
| Proxmox configs | vzdump to USB stick A (daily) |
nightly |
| Proxmox configs | vzdump to USB stick B (weekly) |
weekly |
| LXC / VM disks | Scheduled vzdump β 2 TB HDD pool | nightly |
| Media library | ZFS snapshots + rsync to external HDD | nightly |
| Immich DB | pg_dump via cron |
nightly |
| Git repo | Pushed to GitHub (+private mirror) | on change |
| Immich & TimeMachine (hotβcold) | rsync via systemd timer (03:30) β /mnt/cold | nightly |
| UPS status / battery tests | apcupsd + exporter + manual test | monthly |
- Proxmox VE β https://proxmox.com
- k3s β https://k3s.io
- Docker & Docker Compose β https://docker.com
- Glance β https://github.com/glanceapp/glance
- Inspired by dozens of homelabbers sharing their stacks β€οΈ