stacksintermediateFeatured

Homelab Monitoring Stack — Complete Docker Compose + Grafana Dashboards

9 Docker services, 7 dashboards, 68 panels, 23 alert rules. One docker compose up and your homelab has metrics, logs, and alerts. $0/month to run.

Free~15 minutes setup
docker-composegrafanaprometheuslokipromtailalertmanagernode-exportercadvisorpve-exporteruptime-kuma

What's Included

9-Service Docker Compose

Grafana 11.5.2, Prometheus v3.2.1, Loki 3.4.2, Promtail, Alertmanager, Node Exporter, cAdvisor, PVE Exporter, Uptime Kuma. All pinned versions, health checks, memory limits.

7 Grafana Dashboards

System Overview, Docker Containers, Proxmox Cluster, Disk Health, Network, Alerts Dashboard, Logs Explorer. 68 panels total, auto-provisioned on first boot.

23 Alert Rules

12 host alerts (CPU, memory, disk, swap, predictive disk fill), 6 container alerts (OOM kill, restarts), 5 Proxmox alerts (guest stopped, node down, storage). Homelab-tuned thresholds.

.env-Driven Configuration

Every port, password, retention period, and credential configured through one file. Documented .env.example included.

4 Documentation Guides

README (13 KB), Troubleshooting (10 KB), Customization (9 KB), Proxmox Setup (5 KB). 37 KB total documentation.

2 Utility Scripts

deploy-node-exporter.sh for remote host monitoring (multi-arch), backup.sh for config + Grafana DB archival with rotation.

MIT License

Use it however you want. Modify, redistribute, use commercially. No restrictions.

Features

Zero Ongoing Cost

Fully self-hosted. No API calls, no cloud services, no subscriptions. The only outbound traffic is pulling Docker images.

Dashboards That Match the Stack

Every Grafana panel queries metrics from the exporters included in the compose. No "No Data" panels.

Predictive Disk Alerts

predict_linear() over a 6-hour window projects when your disk will hit 100%. Catches slow fills that static thresholds miss.

Dual-Source Log Shipping

Promtail handles Docker container logs, file-based syslog, and journald automatically. Works on any systemd Linux distro.

Optional Proxmox Monitoring

PVE Exporter with 10-panel dashboard and 5 alert rules. Remove it if you do not run Proxmox — everything else is independent.

~1.2 GB Total RAM

Memory limits on every container. Runs alongside your existing services without surprise resource consumption.

Description

This is the exact monitoring stack I run on my homelab. Nine Docker services in one compose file. Seven Grafana dashboards with 68 visualization panels that are matched to the actual exporters in the stack (every panel has data from the moment you start it). Twenty-three alert rules tuned for homelab use cases, not Kubernetes production clusters. And every configurable value lives in a single .env file — you don't touch YAML.

Start it with docker compose up -d. Grafana opens with all dashboards loaded, all datasources connected, and the System Overview as your home page. The whole setup takes about 15 minutes from download to working dashboards.

Ongoing cost: $0. Everything is self-hosted. No API calls, no cloud services, no subscriptions, no data leaving your network.

Requirements

Docker 24+ with Docker Compose v2+, Linux server (any systemd-based distro), 2 GB free RAM minimum (4 GB total recommended), Proxmox VE optional for PVE Exporter

26 files
.yml.json.sh.md.env.example
15 minutes setup
Read the build story

Learn how this was built, the decisions made, and gotchas to watch for.

Homelab Monitoring Stack — Complete Docker Compose + Grafana DashboardsFree
Get Free Download

Related Products

Get weekly AI architecture insights

Patterns, lessons, and tools from building a production multi-agent system. Delivered weekly.