diff --git a/system-config/services/containers/traefik/default.nix b/system-config/services/containers/traefik/default.nix index 1fea4ed..ade50b5 100644 --- a/system-config/services/containers/traefik/default.nix +++ b/system-config/services/containers/traefik/default.nix @@ -94,6 +94,19 @@ }; }; }; + openWakeWord = { + address = ":11432"; + }; + faster-whisper = { + address = ":11433"; + }; + ollama = { + address = ":11434"; + }; + piper = { + address = ":11435"; + }; + }; log = { level = "DEBUG"; @@ -122,6 +135,34 @@ }; dynamicConfigOptions = { + tcp = { + routers = { + openWakeWord = { + entryPoints = [ "websecure" ]; + rule = "Path(`/api/openWakeWord`)"; + service = "openWakeWord"; + tls.certResolver = "cloudflare"; + }; + faster-whisper = { + entryPoints = [ "websecure" ]; + rule = "Path(`/api/faster-whisper`)"; + service = "faster-whisper"; + tls.certResolver = "cloudflare"; + }; + ollama = { + entryPoints = [ "websecure" ]; + rule = "Path(`/api/ollama`)"; + service = "ollama"; + tls.certResolver = "cloudflare"; + }; + piper = { + entryPoints = [ "websecure" ]; + rule = "Path(`/api/piper`)"; + service = "piper"; + tls.certResolver = "cloudflare"; + }; + }; + }; http = { routers = { homepageSecure = { @@ -153,36 +194,6 @@ service = "homeassistant"; tls.certResolver = "cloudflare"; }; - - openWakeWord = { - entryPoints = [ "websecure" ]; - rule = "Path(`/api/openWakeWord`)"; - service = "openWakeWord"; - tls.certResolver = "cloudflare"; - priority = 2; - }; - faster-whisper = { - entryPoints = [ "websecure" ]; - rule = "Path(`/api/faster-whisper`)"; - service = "faster-whisper"; - tls.certResolver = "cloudflare"; - priority = 2; - }; - ollama = { - entryPoints = [ "websecure" ]; - rule = "Path(`/api/ollama`)"; - service = "ollama"; - tls.certResolver = "cloudflare"; - priority = 2; - }; - piper = { - entryPoints = [ "websecure" ]; - rule = "Path(`/api/piper`)"; - service = "piper"; - tls.certResolver = "cloudflare"; - priority = 2; - }; - jellyfin = { entryPoints = [ "localsecure" "websecure" ]; rule = "Host(`jellyfin.blunkall.us`)";