homelab/TODO.md
Mikkel Georgsen aa5eacf9ce docs: update homelab documentation, CLAUDE.md, and TODOs
- Add updates helper script docs and version checking guidance to CLAUDE.md
- Update container IPs from DHCP to static, add new containers (lisotex, debate-builder)
- Add DragonflyDB stack, NPM proxy entries, DNS records
- Add incident log (Hetzner MAC warning, BSI portmapper)
- Add new TODOs (RustDesk, dns-services helper, mh.datalos.dk)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-04 22:10:23 +00:00

2.3 KiB

Homelab TODO

Pending Tasks

  • Reorganize vmbr1 IP addressing scheme

    • New scheme: VMID = IP (e.g., VMID 114 = 10.5.0.114)
    • .1-.9 - Reserved for special services
    • .10-.99 - DHCP range (change from current 100-200)
    • .100-.253 - Static IPs matching VMIDs
    • .254 - Gateway (PVE host)
    • Exception: VMID 1000 (tailscale) → use .250
    • Containers to migrate: npm (.1→.100), dockge (.10→.101), pbs (.6→.106), forgejo (.14→.114), dns (.2→.115)
    • Already correct: general (.113)
    • mgmt is .108 (would change to .102)
    • Also update: NPM proxy hosts, DNS records (lab.georgsen.dk), iptables NAT rules, documentation
  • Set up Forgejo CI/CD - Enable Forgejo Actions and configure a runner for automated builds/tests

  • Deploy NetBox - IPAM/DCIM for documenting IPs, devices, network topology. Has full API for automation.

  • Deploy OpenCloud - Dropbox alternative with native apps for Android, iOS, Windows, macOS, Linux. Full sync + sharing.

  • Build Hoodik Android app - Hoodik is web-only, create a native Android app for it. Rust backend + Vue frontend, E2E encrypted.

  • Deploy self-hosted RustDesk server - Run hbbs+hbbr on core.georgsen.dk for reliable NAT traversal and private relay when connecting from outside LAN. Eliminates dependency on public RustDesk relay servers.

  • Create dns.services helper script - API works (credentials in ~/homelab/dns-services/credentials), need to create ~/bin/dns-services helper. Endpoint: POST /service/{service_id}/dns/{zone_id}/records. service_id=1389, datalos.dk zone_id=15365.

  • Add mh.datalos.dk DNS record - CNAME to core.georgsen.dk (for generic-beregner app on general:3002). NPM proxy already configured (ID 18).

  • Fix ping on all unprivileged containers - Run setcap cap_net_raw+ep /bin/ping on each container (requires restart or at least root access inside container)

    • Containers to fix: 100 (npm), 101 (dockge), 102 (mgmt), 103 (postgresql01), 104 (redis01), 105 (sentry), 107 (pve-scripts-local), 108 (jukebox), 110 (sense), 111 (dev), 112 (dataloes), 114 (forgejo), 115 (dns), 1000 (tailscale)
    • Skip: 106 (pbs) - privileged container, 113 (general) - already done

Completed

  • Add Uptime Kuma monitors for PBS, Forgejo, Technitium DNS - 2025-01-14
  • Fix ping on container 113 (general) - 2025-01-14