From 4c66c73024abc8886d4b0f8d56503e39c5dbe4c0 Mon Sep 17 00:00:00 2001 From: Stefan Junker Date: Mon, 14 Sep 2020 19:38:36 +0200 Subject: [PATCH] containers: make all host ports configurable --- nix/os/containers/mailserver.nix | 10 +++++++--- nix/os/containers/syncthing.nix | 7 +++++-- nix/os/containers/webserver.nix | 6 ++++-- nix/os/devices/vmd32387.contaboserver.net/system.nix | 7 +++++++ 4 files changed, 23 insertions(+), 7 deletions(-) diff --git a/nix/os/containers/mailserver.nix b/nix/os/containers/mailserver.nix index 532dca3..3064c93 100644 --- a/nix/os/containers/mailserver.nix +++ b/nix/os/containers/mailserver.nix @@ -3,7 +3,11 @@ let passwords = import ../../variables/passwords.crypt.nix; -in args // { +in +{ imapsPort ? 993 +, sievePort ? 4190 +}: args // { + config = { pkgs, ... }: { imports = [ ../profiles/containers/configuration.nix @@ -143,14 +147,14 @@ in args // { { # imaps containerPort = 993; - hostPort = 993; + hostPort = imapsPort; protocol = "tcp"; } { # sieve containerPort = 4190; - hostPort = 4190; + hostPort = sievePort; protocol = "tcp"; } ]; diff --git a/nix/os/containers/syncthing.nix b/nix/os/containers/syncthing.nix index 4798ba6..fe74a9b 100644 --- a/nix/os/containers/syncthing.nix +++ b/nix/os/containers/syncthing.nix @@ -2,7 +2,10 @@ let -in args // { +in +{ syncthingPort ? 22000 +}: args // { + config = { config, pkgs, ... }: { imports = [ ../profiles/containers/configuration.nix @@ -34,7 +37,7 @@ in args // { forwardPorts = [ { containerPort = 22000; - hostPort = 22000; + hostPort = syncthingPort; protocol = "tcp"; } ]; diff --git a/nix/os/containers/webserver.nix b/nix/os/containers/webserver.nix index 7b34875..5009fc5 100644 --- a/nix/os/containers/webserver.nix +++ b/nix/os/containers/webserver.nix @@ -2,7 +2,9 @@ let -in args // { +in +{ httpsPort ? 443 +}: args // { config = { config, pkgs, ... }: { imports = [ ../profiles/containers/configuration.nix @@ -89,7 +91,7 @@ in args // { { # https containerPort = 443; - hostPort = 443; + hostPort = httpsPort; protocol = "tcp"; } ]; diff --git a/nix/os/devices/vmd32387.contaboserver.net/system.nix b/nix/os/devices/vmd32387.contaboserver.net/system.nix index 2f0f529..503948c 100644 --- a/nix/os/devices/vmd32387.contaboserver.net/system.nix +++ b/nix/os/devices/vmd32387.contaboserver.net/system.nix @@ -101,16 +101,23 @@ in { mailserver = import ../../containers/mailserver.nix { hostAddress = "192.168.100.10"; localAddress = "192.168.100.11"; + } { + imapsPort = 993; + sievePort = 4190; }; webserver = import ../../containers/webserver.nix { hostAddress = "192.168.100.12"; localAddress = "192.168.100.13"; + } { + httpsPort = 443; }; syncthing = import ../../containers/syncthing.nix { hostAddress = "192.168.100.14"; localAddress = "192.168.100.15"; + } { + syncthingPort = 22000; }; backup = import ../../containers/backup.nix {