From 82b8c41cff1215f2d6f2b40cacdc2075a2298bed Mon Sep 17 00:00:00 2001 From: Yuri Tatishchev Date: Mon, 16 Jun 2025 01:55:52 -0700 Subject: [PATCH] WIP: add home-assistant proxy to router --- modules/router/dns.nix | 2 ++ modules/router/services.nix | 33 +++++++++++++++++++++------------ 2 files changed, 23 insertions(+), 12 deletions(-) diff --git a/modules/router/dns.nix b/modules/router/dns.nix index 57a0f3a..12e7573 100644 --- a/modules/router/dns.nix +++ b/modules/router/dns.nix @@ -80,6 +80,8 @@ in "|etappi.${sysdomain}^$dnsrewrite=${ifs.lan.p4}.12" "|etappi.${sysdomain}^$dnsrewrite=${ifs.lan.ulaPrefix}::12:1" + "|hass.${domain}^$dnsrewrite=${ifs.lan.ulaAddr}" + # Lab DNS rewrites "||lab.${domain}^$dnsrewrite=etappi.${sysdomain}" diff --git a/modules/router/services.nix b/modules/router/services.nix index 4c96d97..3422e8b 100644 --- a/modules/router/services.nix +++ b/modules/router/services.nix @@ -60,25 +60,34 @@ in plugins = [ "github.com/caddy-dns/cloudflare@v0.2.1" ]; hash = "sha256-Gsuo+ripJSgKSYOM9/yl6Kt/6BFCA6BuTDvPdteinAI="; }; - virtualHosts."grouter.${domain}".extraConfig = '' + virtualHosts."*.${domain}".extraConfig = '' encode tls { dns cloudflare {env.CF_API_KEY} resolvers 1.1.1.1 } - @grafana path /grafana /grafana/* - handle @grafana { - reverse_proxy localhost:${toString config.services.grafana.settings.server.http_port} - } - redir /adghome /adghome/ - handle_path /adghome/* { - reverse_proxy localhost:${toString config.services.adguardhome.port} - basic_auth { - Bob $2a$14$HsWmmzQTN68K3vwiRAfiUuqIjKoXEXaj9TOLUtG2mO1vFpdovmyBy + + @grouter host grouter.${domain} + handle @grouter { + @grafana path /grafana /grafana/* + handle @grafana { + reverse_proxy localhost:${toString config.services.grafana.settings.server.http_port} + } + redir /adghome /adghome/ + handle_path /adghome/* { + reverse_proxy localhost:${toString config.services.adguardhome.port} + basic_auth { + Bob $2a$14$HsWmmzQTN68K3vwiRAfiUuqIjKoXEXaj9TOLUtG2mO1vFpdovmyBy + } + } + handle /* { + reverse_proxy localhost:${toString config.services.glance.settings.server.port} } } - handle /* { - reverse_proxy localhost:${toString config.services.glance.settings.server.port} + + @hass host hass.${domain} + handle @hass { + reverse_proxy homeassistant.4.lab.l.cazzzer.com:8123 } ''; };