// infrastructure ops — Port of Spain, T&T
Self-taught infrastructure engineer running a multi-node homelab stack across bare metal and cloud. Built from first principles — every service documented, every backup tested, every failure learned from.
| Service | Host | Endpoint | Stack | Status |
|---|---|---|---|---|
| Immich Photo mgmt — 65GB, 5,072 assets | homelab | immich.shadeh.dev | Docker · CF Tunnel · Traefik | live |
| Home Assistant Automation, Matter, Zigbee (pending) | homelab | ha.shadeh.dev | Docker · host net · CF Tunnel | live |
| Vaultwarden Self-hosted Bitwarden-compatible | cloudlab | vault.shadeh.dev | Docker · CF Tunnel · Restic→B2 | live |
| Actual Budget Local-first finance — data stays on node | cloudlab | budget.shadeh.dev | Docker · CF Tunnel | live |
| Traefik v3 Reverse proxy — label-based routing | homelab + cloudlab | internal | Docker · CF DNS-01 · wildcard TLS | live |
| Grafana + Prometheus Node Exporter Full · dashboard 1860 | auxlab | internal | Docker · Tailscale mesh | live |
| Uptime Kuma Endpoint health monitoring | auxlab | internal | Docker · Tailscale | live |
| CrowdSec Collaborative IPS + firewall bouncer | homelab + cloudlab | — | Docker | live |
| Restic → B2 Immich backup · 02:00 AST · Vaultwarden 00:00 UTC | homelab + cloudlab | Backblaze B2 | systemd timer · Persistent=true | partial |
| Frigate NVR Object detection, camera feeds | prodesk | — | Proxmox VM | planned |
| Immich ML worker CLIP / face recognition | optiplex | — | Disabled — pending hardware | pending hw |
network_mode: host). Matter server for local mDNS device discovery.02:00 AST. NPM nuked. Traefik v3.7.1 owns 80/443. CF Tunnel for all public subdomains.