Compare commits

..

No commits in common. "90bdbc797971099d86af4705ca2e2ba6d21550c5" and "fdb79c9d21650372422ccf937120125b4759bc01" have entirely different histories.

5 changed files with 33 additions and 8 deletions

View file

@ -2,6 +2,7 @@
imports = [ imports = [
./traefik.nix ./traefik.nix
./authelia.nix ./authelia.nix
./hugo.nix
./forgejo.nix ./forgejo.nix
./rustypaste.nix ./rustypaste.nix
./woodpecker.nix ./woodpecker.nix

View file

@ -0,0 +1,13 @@
{pkgs, ...}: {
environment.systemPackages = with pkgs; [hugo];
virtualisation.oci-containers.containers.hugo = {
image = "klakegg/hugo:0.111.3-ext-ubuntu";
cmd = ["server"];
volumes = [
"/home/notoh/docker/hugo:/src"
];
ports = [
"1313:1313"
];
};
}

View file

@ -30,6 +30,21 @@
entrypoints = ["web"]; entrypoints = ["web"];
service = "dashdot"; service = "dashdot";
}; };
authelia = {
rule = "Host(`passport.notohh.dev`)";
entrypoints = ["websecure"];
service = "authelia";
tls.domains = [{main = "*.notohh.dev";}];
tls.certresolver = "production";
};
hugo = {
rule = "Host(`notohh.dev`)";
entrypoints = ["websecure"];
service = "hugo";
tls.domains = [{main = "*.notohh.dev";}];
tls.certresolver = "production";
middlewares = "authelia";
};
foundryvtt = { foundryvtt = {
rule = "Host(`foundry.flake.sh`)"; rule = "Host(`foundry.flake.sh`)";
entrypoints = ["websecure"]; entrypoints = ["websecure"];
@ -81,7 +96,9 @@
}; };
}; };
services = { services = {
authelia.loadBalancer.servers = [{url = "http://localhost:9091";}];
dashdot.loadBalancer.servers = [{url = "http://localhost:4000";}]; dashdot.loadBalancer.servers = [{url = "http://localhost:4000";}];
hugo.loadBalancer.servers = [{url = "http://localhost:1313";}];
foundryvtt.loadBalancer.servers = [{url = "http://localhost:30000";}]; foundryvtt.loadBalancer.servers = [{url = "http://localhost:30000";}];
forgejo.loadBalancer.servers = [{url = "http://localhost:3200";}]; forgejo.loadBalancer.servers = [{url = "http://localhost:3200";}];
rustypaste.loadBalancer.servers = [{url = "http://localhost:8000";}]; rustypaste.loadBalancer.servers = [{url = "http://localhost:8000";}];
@ -106,6 +123,7 @@
}; };
web = { web = {
address = ":80"; address = ":80";
forwardedHeaders.insecure = true;
}; };
}; };
metrics = { metrics = {

View file

@ -46,19 +46,11 @@
tls.domains = [{main = "*.flake.sh";}]; tls.domains = [{main = "*.flake.sh";}];
tls.certresolver = "production"; tls.certresolver = "production";
}; };
authelia = {
rule = "Host(`passport.notohh.dev`)";
entrypoints = ["websecure"];
service = "authelia";
tls.domains = [{main = "*.notohh.dev";}];
tls.certresolver = "production";
};
}; };
services = { services = {
uptime-kuma.loadBalancer.servers = [{url = "http://100.87.54.48:4000";}]; uptime-kuma.loadBalancer.servers = [{url = "http://100.87.54.48:4000";}];
gotify.loadBalancer.servers = [{url = "http://100.87.54.48:3000";}]; gotify.loadBalancer.servers = [{url = "http://100.87.54.48:3000";}];
conduit.loadBalancer.servers = [{url = "http://100.121.201.47:6167";}]; conduit.loadBalancer.servers = [{url = "http://100.121.201.47:6167";}];
authelia.loadBalancer.servers = [{url = "http://100.121.201.47:9091";}];
}; };
}; };
}; };

View file

@ -20,6 +20,7 @@ _: {
warn-dirty = false; warn-dirty = false;
auto-optimise-store = true; auto-optimise-store = true;
builders-use-substitutes = true; builders-use-substitutes = true;
keep-derivations = true;
keep-outputs = true; keep-outputs = true;
allowed-users = ["@wheel"]; allowed-users = ["@wheel"];
trusted-users = ["root" "@wheel"]; trusted-users = ["root" "@wheel"];