From 7e5691b847d97a4175c4b913d234889eae011a00 Mon Sep 17 00:00:00 2001 From: BinkyTwin Date: Wed, 20 May 2026 21:26:07 +0200 Subject: [PATCH] feat: add Gatus template --- blueprints/gatus/docker-compose.yml | 14 +++++++++++++ blueprints/gatus/gatus.svg | 8 ++++++++ blueprints/gatus/template.toml | 31 +++++++++++++++++++++++++++++ meta.json | 18 +++++++++++++++++ 4 files changed, 71 insertions(+) create mode 100644 blueprints/gatus/docker-compose.yml create mode 100644 blueprints/gatus/gatus.svg create mode 100644 blueprints/gatus/template.toml diff --git a/blueprints/gatus/docker-compose.yml b/blueprints/gatus/docker-compose.yml new file mode 100644 index 00000000..062db80b --- /dev/null +++ b/blueprints/gatus/docker-compose.yml @@ -0,0 +1,14 @@ +version: "3.8" + +services: + gatus: + image: ghcr.io/twin/gatus:v5.36.0 + restart: unless-stopped + expose: + - 8080 + volumes: + - gatus-data:/data + - ../files/config.yaml:/config/config.yaml:ro + +volumes: + gatus-data: {} diff --git a/blueprints/gatus/gatus.svg b/blueprints/gatus/gatus.svg new file mode 100644 index 00000000..e095c099 --- /dev/null +++ b/blueprints/gatus/gatus.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/blueprints/gatus/template.toml b/blueprints/gatus/template.toml new file mode 100644 index 00000000..cd2fbd2e --- /dev/null +++ b/blueprints/gatus/template.toml @@ -0,0 +1,31 @@ +[variables] +main_domain = "${domain}" +monitor_name = "Example website" +monitor_url = "https://example.org/" + +[config] +[[config.domains]] +serviceName = "gatus" +port = 8080 +host = "${main_domain}" + +[[config.mounts]] +filePath = "config.yaml" +content = """ +storage: + type: sqlite + path: /data/data.db + +ui: + title: Gatus + header: Gatus + +endpoints: + - name: ${monitor_name} + group: external + url: "${monitor_url}" + interval: 5m + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" +""" diff --git a/meta.json b/meta.json index 10d7df12..31941bb8 100644 --- a/meta.json +++ b/meta.json @@ -2634,6 +2634,24 @@ "object-storage" ] }, + { + "id": "gatus", + "name": "Gatus", + "version": "v5.36.0", + "description": "Gatus is an automated service health dashboard for monitoring HTTP, DNS, TCP, ICMP, and other endpoints.", + "logo": "gatus.svg", + "links": { + "github": "https://github.com/TwiN/gatus", + "website": "https://gatus.io/", + "docs": "https://github.com/TwiN/gatus#configuration" + }, + "tags": [ + "monitoring", + "status-page", + "uptime", + "observability" + ] + }, { "id": "ghost", "name": "Ghost",