sombrero: Add nginx module
This commit is contained in:
@@ -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;
|
||||||
|
|||||||
@@ -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;
|
||||||
|
|||||||
38
hosts/sombrero/modules/nginx/default.nix
Normal file
38
hosts/sombrero/modules/nginx/default.nix
Normal 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 ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -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 ];
|
||||||
|
|||||||
Reference in New Issue
Block a user