sombrero: Add nginx module

This commit is contained in:
Alexander Heldt
2023-10-22 20:26:39 +02:00
parent 1c5ce3f93c
commit f1a9bfae16
4 changed files with 43 additions and 14 deletions

View File

@@ -73,24 +73,12 @@
firewall = { firewall = {
allowedTCPPorts = [ allowedTCPPorts = [
80
443
1122 # ssh 1122 # ssh
]; ];
}; };
}; };
security.acme.acceptTerms = true;
security.acme.defaults.email = "alex@a2x.se";
services = { services = {
nginx = {
enable = true;
recommendedProxySettings = true;
recommendedTlsSettings = true;
};
openssh = { openssh = {
enable = true; enable = true;
ports = [ 1122 ]; ports = [ 1122 ];
@@ -183,6 +171,7 @@
mod = { mod = {
docker.enable = true; docker.enable = true;
nginx.enable = true;
syncthing.enable = true; syncthing.enable = true;
plex.enable = true; plex.enable = true;
calibre-web.enable = true; calibre-web.enable = true;

View File

@@ -1,6 +1,7 @@
{ lib, config, ... }: { lib, config, ... }:
let let
enabled = config.mod.calibre-web.enable; enabled = config.mod.calibre-web.enable;
nginxEnabled = config.mod.nginx.enable;
in in
{ {
options = { options = {
@@ -9,7 +10,7 @@ in
}; };
}; };
config = lib.mkIf enabled { config = lib.mkIf (enabled && nginxEnabled) {
services = { services = {
calibre-web = { calibre-web = {
enable = true; enable = true;

View File

@@ -0,0 +1,38 @@
{ lib, config, ... }:
let
enabled = config.mod.nginx.enable;
in
{
options = {
mod.nginx = {
enable = lib.mkEnableOption "add nginx module";
};
};
config = lib.mkIf enabled {
security = {
acme = {
acceptTerms = true;
defaults = {
email = "alex@a2x.se";
};
};
};
services = {
nginx = {
enable = true;
recommendedProxySettings = true;
recommendedTlsSettings = true;
};
};
networking = {
firewall = {
allowedTCPPorts = [ 80 443 ];
};
};
};
}

View File

@@ -1,6 +1,7 @@
{ lib, config, ... }: { lib, config, ... }:
let let
enabled = config.mod.syncthing.enable; enabled = config.mod.syncthing.enable;
nginxEnabled = config.mod.nginx.enable;
in in
{ {
options = { options = {
@@ -9,7 +10,7 @@ in
}; };
}; };
config = lib.mkIf enabled { config = lib.mkIf (enabled && nginxEnabled) {
networking = { networking = {
firewall = { firewall = {
allowedTCPPorts = [ 8384 ]; allowedTCPPorts = [ 8384 ];