From 2b8222765054d42eecde3794a03f2ff0dd6f1b69 Mon Sep 17 00:00:00 2001 From: Petru Paler Date: Tue, 16 Jan 2024 16:13:01 +0000 Subject: [PATCH] weewx configuration --- services/weewx.hcl | 66 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100644 services/weewx.hcl diff --git a/services/weewx.hcl b/services/weewx.hcl new file mode 100644 index 0000000..23660b5 --- /dev/null +++ b/services/weewx.hcl @@ -0,0 +1,66 @@ +job "weewx" { + datacenters = ["alo"] + + meta { + uuid = uuidv4() + } + + group "weather" { + network { + port "http" { + } + } + + task "backend" { + driver = "docker" + + config { + image = "gitea.v.paler.net/ppetru/weewx:latest" + volumes = [ + "/data/compute/appdata/weewx/etc:/etc/weewx", + "/data/compute/appdata/weewx/html:/var/www/html", + ] + } + + resources { + # needed for running weectl report run inside the container + #memory = 1024 + } + } + + task "frontend" { + driver = "docker" + + config { + image = "pierrezemb/gostatic" + + ports = [ "http" ] + + args = [ + "-port=${NOMAD_PORT_http}", + "-enable-health", + ] + + volumes = [ "/data/compute/appdata/weewx/html:/srv/http" ] + } + } + + service { + name = "weather" + port = "http" + + tags = [ + "traefik.enable=true", + "traefik.http.routers.weather.entryPoints=websecure", + "traefik.http.routers.weather.rule=Host(`weewx.v.paler.net`) || (Host(`alo.land`) && PathPrefix(`/weather/`))", + ] + + check { + type = "http" + path = "/health" + interval = "10s" + timeout = "2s" + } + } + } +}