nixos-config/nixos/profiles/services/keycloak/default.nix

34 lines
772 B
Nix

{
config,
pkgs,
mylib,
...
}:
{
services.keycloak = {
enable = true;
database = {
type = "postgresql";
passwordFile = "${pkgs.writeText "keycloak-db-password" "keycloak"}";
};
settings = {
http-enabled = true;
http-host = "127.0.0.1";
http-port = config.networking.ports.keycloak;
proxy-headers = "xforwarded";
hostname = "idp.rebmit.moe";
cache = "local";
};
};
systemd.services.keycloak.serviceConfig = mylib.misc.serviceHardened // {
MemoryDenyWriteExecute = false;
};
services.caddy.virtualHosts."idp.rebmit.moe" = {
extraConfig = ''
reverse_proxy ${config.services.keycloak.settings.http-host}:${toString config.services.keycloak.settings.http-port}
'';
};
}