Added config

This commit is contained in:
fwastring 2024-11-28 13:03:38 +01:00
parent 5217d46aa7
commit afa81ebd20
3 changed files with 206 additions and 97 deletions

View file

@ -76,6 +76,7 @@
eza eza
btop btop
xcolor xcolor
beets
# Dev # Dev
gleam gleam

View file

@ -2,7 +2,7 @@
{ {
programs.git = { programs.git = {
enable = true; enable = true;
userName = "FredzyW"; userName = "fwastring";
userEmail = "fredrik@wastring.com"; userEmail = "fredrik@wastring.com";
extraConfig = { extraConfig = {
url."git@github.com:".insteadOf = "https://github.com/"; url."git@github.com:".insteadOf = "https://github.com/";

View file

@ -1,103 +1,211 @@
{ pkgs, lib, ... }: { pkgs, lib, ... }:
{ {
networking.firewall = { networking.firewall = {
allowedTCPPorts = [ 80 443 ]; allowedTCPPorts = [ 80 443 ];
}; };
services.nginx = { services.nginx = {
enable = true; enable = true;
user = "nginx"; user = "nginx";
group = "nginx"; group = "nginx";
# Use recommended settings # Use recommended settings
recommendedGzipSettings = true; recommendedGzipSettings = true;
recommendedOptimisation = true; recommendedOptimisation = true;
recommendedProxySettings = true; recommendedProxySettings = true;
recommendedTlsSettings = true; recommendedTlsSettings = true;
virtualHosts = { virtualHosts = {
"bilder.wastring.com" = { "wastring.com" = {
sslCertificateKey = "/certs/.lego/certificates/wastring.com.key"; sslCertificateKey = "/certs/.lego/certificates/wastring.com.key";
sslCertificate = "/certs/.lego/certificates/wastring.com.crt"; sslCertificate = "/certs/.lego/certificates/wastring.com.crt";
forceSSL = true; forceSSL = true;
locations."/" = { locations."/" = {
proxyPass = "http://172.17.0.1:2283"; proxyPass = "http://172.17.0.1:8081";
proxyWebsockets = true; proxyWebsockets = true;
}; };
}; };
"git.wastring.com" = { "pico.wastring.com" = {
sslCertificateKey = "/certs/.lego/certificates/wastring.com.key"; sslCertificateKey = "/certs/.lego/certificates/wastring.com.key";
sslCertificate = "/certs/.lego/certificates/wastring.com.crt"; sslCertificate = "/certs/.lego/certificates/wastring.com.crt";
forceSSL = true; forceSSL = true;
locations."/" = { locations."/" = {
proxyPass = "http://192.168.16.1:3000"; proxyPass = "http://172.17.0.1:6976";
proxyWebsockets = true; proxyWebsockets = true;
}; };
}; };
"cal.wastring.com" = { "budget.wastring.com" = {
sslCertificateKey = "/certs/.lego/certificates/wastring.com.key"; sslCertificateKey = "/certs/.lego/certificates/wastring.com.key";
sslCertificate = "/certs/.lego/certificates/wastring.com.crt"; sslCertificate = "/certs/.lego/certificates/wastring.com.crt";
forceSSL = true; forceSSL = true;
locations."/" = { locations."/" = {
proxyPass = "http://172.17.0.1:5232"; proxyPass = "http://172.17.0.1:8098";
proxyWebsockets = true; proxyWebsockets = true;
}; };
}; };
"pass.wastring.com" = { "bilder.wastring.com" = {
sslCertificateKey = "/certs/.lego/certificates/wastring.com.key"; sslCertificateKey = "/certs/.lego/certificates/wastring.com.key";
sslCertificate = "/certs/.lego/certificates/wastring.com.crt"; sslCertificate = "/certs/.lego/certificates/wastring.com.crt";
forceSSL = true; forceSSL = true;
locations."/" = { locations."/" = {
proxyPass = "http://172.24.0.1:9445"; proxyPass = "http://172.17.0.1:2283";
proxyWebsockets = true; proxyWebsockets = true;
}; };
}; };
"home.wastring.com" = { "git.wastring.com" = {
sslCertificateKey = "/certs/.lego/certificates/wastring.com.key"; sslCertificateKey = "/certs/.lego/certificates/wastring.com.key";
sslCertificate = "/certs/.lego/certificates/wastring.com.crt"; sslCertificate = "/certs/.lego/certificates/wastring.com.crt";
forceSSL = true; forceSSL = true;
locations."/" = { locations."/" = {
proxyPass = "http://172.17.0.1:8081"; proxyPass = "http://192.168.16.1:3000";
proxyWebsockets = true; proxyWebsockets = true;
}; };
}; };
"drive.wastring.com" = { "cal.wastring.com" = {
sslCertificateKey = "/certs/.lego/certificates/wastring.com.key"; sslCertificateKey = "/certs/.lego/certificates/wastring.com.key";
sslCertificate = "/certs/.lego/certificates/wastring.com.crt"; sslCertificate = "/certs/.lego/certificates/wastring.com.crt";
forceSSL = true; forceSSL = true;
locations."/" = { locations."/" = {
proxyPass = "http://172.17.0.1:3001"; proxyPass = "http://172.17.0.1:5232";
proxyWebsockets = true; proxyWebsockets = true;
}; };
}; };
"pass.wastring.com" = {
sslCertificateKey = "/certs/.lego/certificates/wastring.com.key";
sslCertificate = "/certs/.lego/certificates/wastring.com.crt";
forceSSL = true;
locations."/" = {
proxyPass = "http://172.24.0.1:9445";
proxyWebsockets = true;
};
};
"home.wastring.com" = {
sslCertificateKey = "/certs/.lego/certificates/wastring.com.key";
sslCertificate = "/certs/.lego/certificates/wastring.com.crt";
forceSSL = true;
locations."/" = {
proxyPass = "http://172.17.0.1:8081";
proxyWebsockets = true;
};
};
"drive.wastring.com" = {
sslCertificateKey = "/certs/.lego/certificates/wastring.com.key";
sslCertificate = "/certs/.lego/certificates/wastring.com.crt";
forceSSL = true;
locations."/" = {
proxyPass = "http://172.17.0.1:3001";
proxyWebsockets = true;
};
};
"sandbox.wastring.com" = { "sandbox.wastring.com" = {
sslCertificateKey = "/certs/.lego/certificates/wastring.com.key"; sslCertificateKey = "/certs/.lego/certificates/wastring.com.key";
sslCertificate = "/certs/.lego/certificates/wastring.com.crt"; sslCertificate = "/certs/.lego/certificates/wastring.com.crt";
forceSSL = true; forceSSL = true;
locations."/" = { locations."/" = {
proxyPass = "http://172.17.0.1:3001"; proxyPass = "http://172.17.0.1:3001";
proxyWebsockets = true; proxyWebsockets = true;
}; };
}; };
"files.wastring.com" = { "files.wastring.com" = {
sslCertificateKey = "/certs/.lego/certificates/wastring.com.key"; sslCertificateKey = "/certs/.lego/certificates/wastring.com.key";
sslCertificate = "/certs/.lego/certificates/wastring.com.crt"; sslCertificate = "/certs/.lego/certificates/wastring.com.crt";
forceSSL = true; forceSSL = true;
locations."/" = { locations."/" = {
proxyPass = "http://172.17.0.1:3923"; proxyPass = "http://172.17.0.1:8380";
proxyWebsockets = true; proxyWebsockets = true;
}; };
}; };
"ftp.wastring.com" = { "text.wastring.com" = {
sslCertificateKey = "/certs/.lego/certificates/wastring.com.key"; sslCertificateKey = "/certs/.lego/certificates/wastring.com.key";
sslCertificate = "/certs/.lego/certificates/wastring.com.crt"; sslCertificate = "/certs/.lego/certificates/wastring.com.crt";
forceSSL = true; forceSSL = true;
locations."/" = { locations."/" = {
proxyPass = "http://172.17.0.1:3921"; proxyPass = "http://172.17.0.1:7000";
proxyWebsockets = true; proxyWebsockets = true;
}; };
}; };
}; "docs.wastring.com" = {
}; sslCertificateKey = "/certs/.lego/certificates/wastring.com.key";
sslCertificate = "/certs/.lego/certificates/wastring.com.crt";
forceSSL = true;
locations."/" = {
proxyPass = "http://172.17.0.1:8000";
proxyWebsockets = true;
};
};
"carpool.wastring.com" = {
sslCertificateKey = "/certs/.lego/certificates/wastring.com.key";
sslCertificate = "/certs/.lego/certificates/wastring.com.crt";
forceSSL = true;
locations."/" = {
proxyPass = "http://172.17.0.1:8080";
proxyWebsockets = true;
};
};
"search.wastring.com" = {
sslCertificateKey = "/certs/.lego/certificates/wastring.com.key";
sslCertificate = "/certs/.lego/certificates/wastring.com.crt";
forceSSL = true;
locations."/" = {
proxyPass = "http://localhost:40080";
proxyWebsockets = true;
};
};
"latex.wastring.com" = {
sslCertificateKey = "/certs/.lego/certificates/wastring.com.key";
sslCertificate = "/certs/.lego/certificates/wastring.com.crt";
forceSSL = true;
locations."/" = {
proxyPass = "http://localhost:3080";
proxyWebsockets = true;
};
};
"yt.wastring.com" = {
sslCertificateKey = "/certs/.lego/certificates/wastring.com.key";
sslCertificate = "/certs/.lego/certificates/wastring.com.crt";
forceSSL = true;
locations."/" = {
proxyPass = "http://localhost:40000";
proxyWebsockets = true;
};
};
"talk.wastring.com" = {
sslCertificateKey = "/certs/.lego/certificates/wastring.com.key";
sslCertificate = "/certs/.lego/certificates/wastring.com.crt";
forceSSL = true;
locations."/" = {
proxyPass = "http://localhost:9000";
proxyWebsockets = true;
};
};
"soulseek.wastring.com" = {
sslCertificateKey = "/certs/.lego/certificates/wastring.com.key";
sslCertificate = "/certs/.lego/certificates/wastring.com.crt";
forceSSL = true;
locations."/" = {
proxyPass = "http://localhost:5030";
proxyWebsockets = true;
};
};
"board.wastring.com" = {
sslCertificateKey = "/certs/.lego/certificates/wastring.com.key";
sslCertificate = "/certs/.lego/certificates/wastring.com.crt";
forceSSL = true;
locations."/" = {
proxyPass = "http://localhost:8038";
proxyWebsockets = true;
};
};
"ha.wastring.com" = {
sslCertificateKey = "/certs/.lego/certificates/wastring.com.key";
sslCertificate = "/certs/.lego/certificates/wastring.com.crt";
forceSSL = true;
locations."/" = {
proxyPass = "http://172.17.0.1:8123";
proxyWebsockets = true;
};
};
};
};
} }