{config, ...}: { services.nginx = { enable = true; # enable recommended settings recommendedGzipSettings = true; recommendedOptimisation = true; recommendedTlsSettings = true; recommendedProxySettings = true; virtualHosts = { "auth.vhack.eu" = { forceSSL = true; enableACME = true; locations = { "/" = { proxyPass = "http://localhost:${toString config.services.keycloak.settings.http-port}/"; }; }; }; }; }; services.postgresql.enable = true; services.keycloak = { enable = true; database = { type = "postgresql"; createLocally = true; username = "keycloak"; passwordFile = "/srv/password"; }; settings = { hostname = "auth.vhack.eu"; http-relative-path = "/"; http-port = 38080; proxy = "passthrough"; http-enabled = true; }; }; }