pi/config/endpoints.nix
Katharina Heidenreich 3afb7d5cf4 feat: add known hosts
2026-04-04 17:03:12 +02:00

91 lines
No EOL
2 KiB
Nix

let
net = import ./network.nix;
services = import ./services.nix;
web = import ../intermediate/web.nix;
in
[
{
type = "web";
domain = net.devices.remote_proxy.domain;
endpoint = "/";
force_ssl = true;
port = 443;
content = web.storePayloads.home;
}
{
type = "proxy";
domain = net.devices.remote_proxy.domain;
endpoint = "/_matrix/";
force_ssl = true;
port = 443;
content = {
type = "service";
ip = net.devices.pi.ip;
port = services.continuwuity.port;
proxyWebsockets = true;
};
}
{
type = "proxy";
domain = net.devices.remote_proxy.domain;
endpoint = "/_matrix/";
force_ssl = true;
port = 8448;
content = {
type = "service";
ip = net.devices.pi.ip;
port = services.continuwuity.port;
proxyWebsockets = true;
};
}
{
type = "inline";
domain = net.devices.remote_proxy.domain;
endpoint = "/.well-known/matrix/server";
force_ssl = true;
port = 443;
content = {
contentType = "application/json";
status = 200;
body = ''{"m.server":"${net.devices.remote_proxy.domain}:443"}'';
};
}
{
type = "inline";
domain = net.devices.remote_proxy.domain;
endpoint = "/.well-known/matrix/client";
force_ssl = true;
port = 443;
content = {
contentType = "application/json";
status = 200;
body = ''{"m.homeserver":{"base_url":"https://${net.devices.remote_proxy.domain}"}}'';
};
}
{
type = "proxy";
domain = "torrent.${net.local_domain}";
endpoint = "/";
force_ssl = false;
port = 80;
content = {
type = "service";
ip = net.devices.pi.ip;
port = services.qbittorrent.port;
proxyWebsockets = false;
};
}
{
type = "proxy";
domain = "wiki.${net.local_domain}";
endpoint = "/";
force_ssl = false;
port = 80;
content = {
type = "service";
ip = net.devices.pi.ip;
port = services.kiwix.port;
proxyWebsockets = true;
};
}
]