home-server-config/rabbi-gerzi.nix

49 lines
1.2 KiB
Nix

{
config,
...
}:
{
services.rabbi-gerzi = {
enable = true;
secretFiles = {
borgPassphrase = config.sops.secrets."borg-passphrase".path;
borgPrivateKey = config.sops.secrets."borg-private-key".path;
};
frontend = {
hostName = "rabbigerzi.com";
nginx = {
forceSSL = true;
enableACME = true;
serverAliases = [ "rabbigerzi.yisroelbaum.com" ];
};
};
backend = {
hostName = "api.rabbigerzi.com";
environmentFile = config.sops.secrets."rabbi-gerzi-env".path;
corsAllowedOrigins = [
"https://rabbigerzi.com"
"https://rabbigerzi.yisroelbaum.com"
];
nginx = {
forceSSL = true;
enableACME = true;
serverAliases = [ "rabbigerziapi.yisroelbaum.com" ];
};
};
};
services.nginx.virtualHosts."www.rabbigerzi.com" = {
forceSSL = true;
enableACME = true;
globalRedirect = "rabbigerzi.com";
};
sops.secrets."rabbi-gerzi-env" = {
sopsFile = ./secrets/rabbi-gerzi.env;
format = "dotenv";
key = "";
mode = "0400";
owner = config.services.rabbi-gerzi.user;
group = config.services.rabbi-gerzi.group;
};
}