No description
Replace the DNAT implementation steps with an accurate account of what works in UniFi Network 10.4.57: Dest. NAT only supports WAN port-forwarding and cannot redirect internal VLAN DNS traffic. Document the deployed DHCP enforcement approach as the current strategy and preserve the DNAT field reference for when UniFi adds LAN-facing support. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> |
||
|---|---|---|
| docker-compose-files | ||
| docs | ||
| .env.sample | ||
| .gitignore | ||
| ipfconfig | ||
| README.md | ||
| setup-homeassistant.sh | ||
| setup-node-red.sh | ||
| substitute_env.sh | ||
Homelab Blueprint
Docker Compose templates and deployment guides for self-hosted services.
Quick Start
Run repository commands from the project root:
cp -n .env.sample .env
Configure .env, then follow the README for the stack you want to deploy. Each
guide explains appdata placement, template rendering, startup, verification,
networking, troubleshooting, and backup.
Stacks
| Stack | Description |
|---|---|
| Arr Stack | Media management, downloads, VPN, Emby, and Recyclarr |
| Beszel Agent | Host and Docker monitoring agent |
| Beszel Socket Proxy | Restricted Docker API access for Beszel |
| Caddy | Reverse proxy with Cloudflare DNS-01 |
| Gramps Web | Genealogy web application |
| Home Assistant | Home Assistant, Mosquitto, and Zigbee2MQTT |
| Node-RED | Flow automation with Home Assistant integration |
| PostgreSQL | PostgreSQL and pgAdmin |
| Technitium DNS | DNS server and ad blocking |
| Vault | HashiCorp Vault secrets management |
Shared Commands
Most stacks use the following pattern:
./substitute_env.sh docker-compose-files/<stack>/template.yaml docker-compose.<stack>.yml .env
docker compose -f docker-compose.<stack>.yml config --quiet
docker compose -f docker-compose.<stack>.yml up -d
Home Assistant and Node-RED use their setup scripts instead. Arr Stack, Caddy, and Gramps Web render additional configuration templates.
Requirements
- Linux host with Docker Engine and Docker Compose
- Git
- A configured
.envbased on.env.sample - Service-specific storage and network access described in each stack README
Generated docker-compose.*.yml files may contain secrets and are ignored by
Git.