Homelab.

One machine. Twelve services. Constant tinkering.
Everything self-hosted, everything on Podman, everything monitored.

live status → Uptime Kuma
Forgejo
Self-hosted Git. Mirrors to GitHub.
Authentik
Identity provider — SSO for all services.
Vaultwarden
Bitwarden-compatible password server.
Traefik
Reverse proxy + auto TLS via Let's Encrypt.
Portainer
Container management UI.
Grafana
Monitoring dashboard — Prometheus + Loki.
Prometheus
Metrics scraping from all containers.
Loki
Log aggregation. Tailed by Promtail.
n8n
Workflow automation — webhooks, notifications.
Uptime Kuma
Public status page for hosted services.
Forgejo CI
Self-hosted CI runner. Mostly linting + tests.
Netbird
Mesh VPN — connect lab hosts from anywhere.

Dots sync from Uptime Kuma when a monitor exists. Unmonitored services stay as —.

02Hardware
MachineThinkCentre M710q-N000
Storage512 GB SSD OS · 2 TB HDD data (1×1 TB + 2×500 GB)
OSFedora Server
VPNNetbird
03Stack decisions
Container runtimePodman (rootless)
SecretsVaultwarden + env files
DNSPi-hole for ad blocking
MonitoringGrafana + Prometheus + Loki + Uptime Kuma
CI/CDForgejo Actions
AuthAuthentik SSO — OAuth2 proxy in front of services