Homelab

A self-hosted homelab powered by Docker, Caddy, and AI agents. Every service runs on bare metal in a Fedora 41 server called Friday.

Hardware

i3-7100T
CPU
16 GB
RAM
118 GB
System Disk
3.6 TB
Media Drive
Fedora 41
OS
39
Containers

Infrastructure

Caddy
Reverse proxy · *.friday.lab
AdGuard Home
DNS · ad blocking · DHCP
Authentik
SSO · OAuth provider
Vaultwarden
Password manager
Beszel
Server monitoring
Portainer
Docker management
Watchtower
Auto-updates
Cloudflare
Tunnel · Pages

Media Stack

Jellyfin
Media server
Jellyseerr
Media requests
Sonarr
TV series
Radarr
Movies
Lidarr
Music
Bazarr
Subtitles
Prowlarr
Indexers
qBittorrent
Torrents
RDT-Client
Real-Debrid
Unmanic
Video transcoding
Pinchflat
YouTube
Prunemate
Cleanup

AI & Automation

Home Assistant
Home automation
Ollama
Local LLMs
Open WebUI
Chat interface
Honcho
AI memory

Photos & Documents

Immich
Photo server
Paperless
Document mgmt
Kiwix
Offline Wikipedia
Navidrome
Music streaming

Hardware

Bambu Lab A1
3D printer · LAN: 192.168.0.204 · Dashboard

Network

friday.lab · DMZ
Internet
ISP → C6
C6 Archer
Main Router
AdGuard DNS
WiFi ≋
C5 Archer
Wireless Bridge
Friday
Homelab Server
friday.network ≋ DMZ
Phones Laptops TV IoT
All devices connect to friday.network SSID · DNS via C6 → AdGuard

Why Self-Host

Every service here runs on hardware I own, connected through a network I control. There's no vendor lock-in, no per-seat pricing, no data leaving the premises unless I explicitly tunnel it.

Immich replaces Google Photos. Paperless replaces filing cabinets. Jellyfin replaces Netflix. Vaultwarden replaces 1Password. AdGuard Home blocks ads network-wide.

Cost: ~$100/mo for electricity, internet, and a backup VPS. Compared to the equivalent SaaS bundle, that's about 10-15x cheaper and infinitely more private.

Stack Details

Infrastructure

8 containers
  • Caddy — reverse proxy, TLS, path-based routing *.friday.lab
  • AdGuard Home — DNS, DHCP, ad blocking 3000
  • Cloudflare Tunnel — public ingress, no open ports trycloudflare.com
  • Vision Router — subdomain router for tools vision.*
  • Portainer — Docker management UI 9000
  • Beszel — lightweight monitoring stack 8090
  • Watchtower — unattended container updates

Media Stack

10 containers
  • Jellyfin — media server & streaming 8096
  • Sonarr, Radarr, Lidarr — *arr automation trio
  • Bazarr — subtitle management
  • Prowlarr — indexer aggregation
  • qBittorrent + RDT-Client — dual download
  • Unmanic — automated video transcoding
  • Pinchflat — YouTube channel downloads

AI & Memory

4 containers
  • Home Assistant — home automation hub
  • Ollama — local LLM inference
  • Open WebUI — chat interface for Ollama
  • Honcho — persistent AI memory pgvector

Data & Backups

7 containers
  • Immich — Google Photos alternative 2283
  • Paperless-ngx — document management 8000
  • Vaultwarden — password manager
  • Kiwix — offline Wikipedia 8005
  • Navidrome — music streaming 4533
  • Postgres — databases for Honcho, Paperless, Netvisor

Gallery