Skip to content

Latest commit

 

History

History
58 lines (40 loc) · 1.87 KB

README.md

File metadata and controls

58 lines (40 loc) · 1.87 KB

monitoring-compose

Compose files for a monitoring system.

Requirements

  • Docker (19.03.0+)
  • Docker Compose

What does it contains

  • Grafana
  • Prometheus
  • Uptime Kuma
  • node_exporter (optional, machine stats)

Notes

  • This deployment assumes you use Traefik as a reverse proxy
  • This deployment does not uses SMTP (see GF_SMTP_* configuration keys for that)
  • Some part of the configuration related to OAUTH were omitted to simplify this repo (see GF_AUTH_GENERIC_OAUTH_* configuration keys for that)
  • Network configuration of the Compose file was omitted
  • The real deployment uses a different drive for secrets (including the prometheus.yml) but was simplified for this repo

Volumes

This deployment uses multiple volumes:

  • . - Current directory, pulled from the configuration repository
  • /mnt/store - A dedicated storage area

HowTo

  1. Change paths of /mnt/secrets and /mnt/store to your desired ones.
  2. Create the environment file .env containing:
grafanahostname=grafana.something.tld
kumahostname=kuma.something.tld

GF_SECURITY_ADMIN_PASSWORD=iamsecret
POSTGRES_DB=grafana
POSTGRES_USER=grafana
POSTGRES_PASSWORD=evenmoresecret
  1. docker compose up -d uptime-kuma and set it up
  2. Fill the uptime-kuma credentials in the prometheus.yml to be able to scrape data from it
  3. docker compose up -d bring the rest of the services up

You can now go on your Grafana hostname and set it up.

Additional resources