diff --git a/modules/servers/per-server/tyr/services/dns.nix b/modules/servers/per-server/tyr/services/dns.nix index b3c5c68..bd219a0 100644 --- a/modules/servers/per-server/tyr/services/dns.nix +++ b/modules/servers/per-server/tyr/services/dns.nix @@ -85,6 +85,7 @@ ''"linkwarden.home.cronyakatsuki.xyz IN A 192.168.0.5"'' ''"paperless.home.cronyakatsuki.xyz IN A 192.168.0.5"'' ''"komga.home.cronyakatsuki.xyz IN A 192.168.0.5"'' + ''"esphome.home.cronyakatsuki.xyz IN A 192.168.0.5"'' ]; }; }; diff --git a/modules/servers/per-server/tyr/services/esp-home.nix b/modules/servers/per-server/tyr/services/esp-home.nix new file mode 100644 index 0000000..257ac89 --- /dev/null +++ b/modules/servers/per-server/tyr/services/esp-home.nix @@ -0,0 +1,20 @@ +{ + services.esphome.enable = true; + + services.traefik.dynamicConfigOptions.http = { + services.esphome.loadBalancer.servers = [ + { + url = "http://localhost:6052"; + } + ]; + + routers.esphome = { + rule = "Host(`esphome.home.cronyakatsuki.xyz`)"; + tls = { + certResolver = "porkbun"; + }; + service = "esphome"; + entrypoints = "websecure"; + }; + }; +}