Skip to content
  • Grafana 🚀 : A dashboard to show all monitored metrics.
  • Prometheus 🚀 : A tool to monitor and collect systems and services metrics.
  • Influx-DB 🚀 : An equivalent to Prometheus
  • Exporters :
    • Node Exporter 🚀 : Export system metrics
    • Cadvisor 🚀 : Export container CPU/Memory usage metrics
    • App iconWatchtower
    • Promtail : read logs file and export their content
    • Loki : Intermediate between Promtail and InfluxDb

I switch to using only Beszel with Beszel agent on other hosts, it’s way simpler to setup and still really complete (and with Docker support).

services:
beszel:
image: henrygd/beszel:0.10.2
container_name: beszel_hub
restart: unless-stopped
ports:
- 8090:8090
volumes:
- /data/apps/monitoring/beszel_data:/beszel_data
networks:
- homelab
labels:
- traefik.enable=true
- traefik.http.routers.beszel.rule=Host(`beszel.zrx.sh`)
- traefik.http.services.beszel.loadbalancer.server.port=8090
- traefik.http.routers.beszel.middlewares=homelab-whitelist@file
- traefik.http.routers.beszel.tls=true
- traefik.http.routers.beszel.tls.certresolver=production
- traefik.http.routers.beszel.tls.domains[0].main=zrx.sh
- traefik.http.routers.beszel.tls.domains[0].sans=*.zrx.sh
beszel-agent:
image: henrygd/beszel-agent:0.10.2
container_name: beszel-rpi_agent
restart: unless-stopped
network_mode: host
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
- /mnt/hdd1/.beszel:/extra-filesystems/hdd1:ro
environment:
PORT: ${PORT}
KEY: ${KEY}
networks:
homelab:
external: true