summaryrefslogtreecommitdiff
path: root/hosts/flora
diff options
context:
space:
mode:
Diffstat (limited to 'hosts/flora')
-rw-r--r--hosts/flora/configuration.nix1
-rw-r--r--hosts/flora/services/grafana.nix41
2 files changed, 42 insertions, 0 deletions
diff --git a/hosts/flora/configuration.nix b/hosts/flora/configuration.nix
index d45175e..6aac996 100644
--- a/hosts/flora/configuration.nix
+++ b/hosts/flora/configuration.nix
@@ -9,6 +9,7 @@
./services/pleroma.nix
./services/cgit.nix
./services/surveys.nix
+ ./services/grafana.nix
#./services/picarones.nix
];
diff --git a/hosts/flora/services/grafana.nix b/hosts/flora/services/grafana.nix
new file mode 100644
index 0000000..15fd254
--- /dev/null
+++ b/hosts/flora/services/grafana.nix
@@ -0,0 +1,41 @@
+{ config, pkgs, ... }:
+
+{
+ services.prometheus = {
+ enable = true;
+ port = 9001;
+ scrapeConfigs = [ {
+ job_name = "lmucast-docker";
+ static_configs = [ {
+ targets = [ "cast.itunes.uni-muenchen.de:9101" ];
+ } ];
+ } ];
+ };
+
+ services.grafana = {
+ enable = true;
+ port = 5000;
+ addr = "[::]";
+ rootUrl = "https://scrape.stuebinm.eu/";
+ auth.anonymous.enable = true;
+ provision = {
+ enable = true;
+ datasources = [ {
+ name = "lmucast";
+ type = "prometheus";
+ url = "http://localhost:9001";
+ } ];
+ };
+ };
+
+ services.nginx.virtualHosts."scrape.stuebinm.eu" = {
+ locations."/" = {
+ proxyPass = "http://localhost:5000";
+ proxyWebsockets = true;
+ };
+ enableACME = true;
+ forceSSL = true;
+ };
+
+ networking.firewall.allowedTCPPorts = [ 80 443 ];
+}