From 7ba6caf5a1e4a8a5a330aad6ac0cfb5c1dc2ee1f Mon Sep 17 00:00:00 2001 From: Bun Date: Wed, 2 Jul 2025 22:06:01 -0400 Subject: [PATCH] Uptime kuma --- hosts/midas/services/default.nix | 1 + modules/system/services/server/default.nix | 1 + .../system/services/server/uptime-kuma/default.nix | 8 ++++++++ .../services/server/uptime-kuma/nginx/default.nix | 11 +++++++++++ 4 files changed, 21 insertions(+) create mode 100644 modules/system/services/server/uptime-kuma/default.nix create mode 100644 modules/system/services/server/uptime-kuma/nginx/default.nix diff --git a/hosts/midas/services/default.nix b/hosts/midas/services/default.nix index 6a45e683..96de5dea 100644 --- a/hosts/midas/services/default.nix +++ b/hosts/midas/services/default.nix @@ -15,6 +15,7 @@ nfs.server.enable = true; owncast.enable = true; transmission.enable = true; + uptime-kuma.enable = true; vaultwarden.enable = true; minecraft-servers = { diff --git a/modules/system/services/server/default.nix b/modules/system/services/server/default.nix index 59510325..ce67411b 100644 --- a/modules/system/services/server/default.nix +++ b/modules/system/services/server/default.nix @@ -17,6 +17,7 @@ ./nginx ./owncast ./transmission + ./uptime-kuma ./vaultwarden ]; } diff --git a/modules/system/services/server/uptime-kuma/default.nix b/modules/system/services/server/uptime-kuma/default.nix new file mode 100644 index 00000000..5d306812 --- /dev/null +++ b/modules/system/services/server/uptime-kuma/default.nix @@ -0,0 +1,8 @@ +{ config, lib, ... }: +{ + imports = [ ./nginx ]; + + services.uptime-kuma.settings.PORT = "4005"; + + environment.persistence."/persist".directories = lib.mkIf config.services.uptime-kuma.enable [ "/var/lib/private/uptime-kuma" ]; +} diff --git a/modules/system/services/server/uptime-kuma/nginx/default.nix b/modules/system/services/server/uptime-kuma/nginx/default.nix new file mode 100644 index 00000000..8bb98fde --- /dev/null +++ b/modules/system/services/server/uptime-kuma/nginx/default.nix @@ -0,0 +1,11 @@ +{ config, lib, ... }: +{ + services.nginx.virtualHosts."uptime.${config.vars.primeDomain}" = lib.mkIf config.services.uptime-kuma.enable { + enableACME = true; + forceSSL = true; + locations."/" = { + proxyPass = "http://127.0.0.1:4005"; + proxyWebsockets = true; + }; + }; +}