Compare commits
2 commits
5767763227
...
f3d506f4cc
Author | SHA1 | Date | |
---|---|---|---|
f3d506f4cc |
|||
5dd5ad74eb |
2 changed files with 34 additions and 2 deletions
|
@ -19,6 +19,7 @@ in {
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
modules.system.services = {
|
modules.system.services = {
|
||||||
database.postgresql.enable = true;
|
database.postgresql.enable = true;
|
||||||
|
nginx.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
networking.firewall.allowedTCPPorts = [
|
networking.firewall.allowedTCPPorts = [
|
||||||
|
@ -51,8 +52,6 @@ in {
|
||||||
security.acme = let
|
security.acme = let
|
||||||
email = "charlie@charlieroot.dev";
|
email = "charlie@charlieroot.dev";
|
||||||
in {
|
in {
|
||||||
acceptTerms = true;
|
|
||||||
defaults.email = email;
|
|
||||||
# testing server, do not use in production, but DO use it for setting things up.
|
# testing server, do not use in production, but DO use it for setting things up.
|
||||||
# it has much higher rate limits.
|
# it has much higher rate limits.
|
||||||
# defaults.server = "https://acme-staging-v02.api.letsencrypt.org/directory";
|
# defaults.server = "https://acme-staging-v02.api.letsencrypt.org/directory";
|
||||||
|
|
33
modules/services/nginx/module.nix
Normal file
33
modules/services/nginx/module.nix
Normal file
|
@ -0,0 +1,33 @@
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
inherit (lib.modules) mkIf mkDefault;
|
||||||
|
inherit (lib.options) mkEnableOption;
|
||||||
|
cfg = config.modules.system.services.nginx;
|
||||||
|
in {
|
||||||
|
options.modules.system.services.nginx.enable = mkEnableOption "nginx";
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
security = {
|
||||||
|
acme = {
|
||||||
|
acceptTerms = true;
|
||||||
|
defaults.email = "charlie@charlieroot.dev";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
services.ngingx = {
|
||||||
|
package = pkgs.nginxQuic;
|
||||||
|
statusPage = true;
|
||||||
|
|
||||||
|
recommendedTlsSettings = true;
|
||||||
|
recommendedBrotliSettings = true;
|
||||||
|
recommendedOptimisation = true;
|
||||||
|
recommendedGzipSettings = true;
|
||||||
|
recommendedProxySettings = true;
|
||||||
|
recommendedZstdSettings = true;
|
||||||
|
|
||||||
|
clientMaxBodySize = mkDefault "512m";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
Loading…
Add table
Add a link
Reference in a new issue