AquaticOS/modules/servers/caddy.nix

85 lines
No EOL
2.3 KiB
Nix

{ ... }:
{
flake.modules.nixos.caddy =
{
networking.firewall.allowedTCPPorts = [ 80 443 ];
services.caddy = {
enable = true;
email = "webmaster@aquaticservers.com";
virtualHosts = {
"https://git.aquaticservers.com" = {
extraConfig = ''
reverse_proxy http://192.168.0.80:4000
'';
};
"https://hass.aquaticservers.com" = {
extraConfig = ''
reverse_proxy http://192.168.0.80:8123
'';
};
"https://immich.aquaticservers.com" = {
extraConfig = ''
reverse_proxy http://192.168.0.80:2283
'';
};
"https://vault.aquaticservers.com" = {
extraConfig = ''
reverse_proxy http://192.168.0.80:8043
'';
};
"https://invidious.aquaticservers.com" = {
extraConfig = ''
reverse_proxy http://192.168.0.80:5464
'';
};
"https://invidiouscomp.aquaticservers.com" = {
extraConfig = ''
reverse_proxy http://192.168.0.80:8282
'';
};
"https://jellyfin.aquaticservers.com" = {
extraConfig = ''
reverse_proxy http://192.168.0.80:8096
'';
};
"https://kiwix.aquaticservers.com" = {
extraConfig = ''
reverse_proxy http://192.168.0.80:8380
'';
};
"https://bazarr.aquaticservers.com" = {
extraConfig = ''
reverse_proxy http://192.168.0.80:6767
'';
};
"https://prowlarr.aquaticservers.com" = {
extraConfig = ''
reverse_proxy http://192.168.0.80:9696
'';
};
"https://radarr.aquaticservers.com" = {
extraConfig = ''
reverse_proxy http://192.168.0.80:7878
'';
};
"https://requestrr.aquaticservers.com" = {
extraConfig = ''
reverse_proxy http://192.168.0.80:4545
'';
};
"https://sonarr.aquaticservers.com" = {
extraConfig = ''
reverse_proxy http://192.168.0.80:8989
'';
};
"https://qbittorrent.aquaticservers.com" = {
extraConfig = ''
reverse_proxy http://192.168.0.80:8080
'';
};
};
};
};
}