Commit 302bcd0

HPCesia <me@hpcesia.com>
2025-07-24 16:32:57
feat(service): add goatcounter on pardo
1 parent a658331
Changed files (4)
hosts/chaser-pardofelis/homepage/default.nix
@@ -112,6 +112,10 @@ in {
         href = "https://squoosh.app/";
         icon = "sh-squoosh.svg";
       };
+      GoatCounter = {
+        href = "https://goatcounter.hpcesia.com/";
+        icon = "sh-goatcounter.svg";
+      };
     };
     "阅读" = mapHomepageConf {
       FreshRSS = {
hosts/chaser-pardofelis/caddy.nix
@@ -22,6 +22,7 @@
           builtins.substring 6 (-1) config.services.authelia.instances.main.settings.server.address
         }";
         forgejo = "http://localhost:${builtins.toString config.services.forgejo.settings.server.HTTP_PORT}";
+        goatcounter = "http://localhost:${builtins.toString config.services.goatcounter.port}";
         gotosocial = "http://localhost:${builtins.toString config.services.gotosocial.settings.port}";
         grafana = "http://localhost:${builtins.toString config.services.grafana.settings.server.http_port}";
         homepage = "http://localhost:${builtins.toString config.services.homepage-dashboard.listenPort}";
@@ -41,6 +42,10 @@
         encode zstd gzip
         reverse_proxy ${localAddress.vaultwarden}
       '';
+      "goatcounter.hpcesia.com".extraConfig = ''
+        encode zstd gzip
+        reverse_proxy ${localAddress.goatcounter}
+      '';
       "grafana.hpcesia.com".extraConfig = ''
         encode zstd gzip
         reverse_proxy ${localAddress.grafana}
hosts/chaser-pardofelis/goatcounter.nix
@@ -0,0 +1,9 @@
+{...}: {
+  services.goatcounter = {
+    enable = true;
+    address = "127.0.0.1";
+    port = 4627;
+    proxy = true;
+    extraArgs = [];
+  };
+}
hosts/chaser-pardofelis/restic.nix
@@ -14,6 +14,7 @@
         config.services.artalk.workdir
         "/var/lib/fail2ban"
         config.services.freshrss.dataDir
+        "/var/lib/goatcounter"
         "/var/lib/gotosocial"
         config.services.grafana.dataDir
         "/var/lib/${config.services.victoriametrics.stateDir}"