diff --git a/hosts/v-th-ctr-01/home.nix b/hosts/v-th-ctr-01/home.nix index 9df957b..4a6cf08 100644 --- a/hosts/v-th-ctr-01/home.nix +++ b/hosts/v-th-ctr-01/home.nix @@ -41,6 +41,7 @@ nginx.enable = true; caddy.enable = true; kanidm.enable = true; + forgejo.enable = true; }; }; diff --git a/modules/home/containers/caddy.nix b/modules/home/containers/caddy.nix index 25f0955..ad160ea 100644 --- a/modules/home/containers/caddy.nix +++ b/modules/home/containers/caddy.nix @@ -44,7 +44,12 @@ in { @kanidm host auth.tbmrs.nl handle @kanidm { - reverse_proxy https://auth.tbmrs.nl:8443 + reverse_proxy https://auth.tbmrs.nl + } + + @forgejo host git.tbmrs.nl + handle @forgejo { + reverse_proxy forgejo:3000 } } ''; diff --git a/modules/home/containers/forgejo.nix b/modules/home/containers/forgejo.nix new file mode 100644 index 0000000..0ba3526 --- /dev/null +++ b/modules/home/containers/forgejo.nix @@ -0,0 +1,32 @@ +{ config, lib, ... }: + +with lib; + +let + cfg = config.settings.containers.forgejo; +in { + options = { + settings.containers.forgejo.enable = lib.mkOption { + type = lib.types.bool; + default = false; + description = '' + Enable forgejo container + ''; + }; + }; + + config = mkIf cfg.enable { + services.podman.containers.forgejo = { + image = "codeberg.org/forgejo/forgejo:11"; + network = "proxy"; + volumes = [ + "%h/containers/forgejo/data:/data" + ]; + environment = { + FORGEJO__service__ALLOW_ONLY_EXTERNAL_REGISTRATION = true; + FORGEJO__service__SHOW_REGISTRATION_BUTTON = false; + FORGEJO__service__ENABLE_PASSWORD_SIGNIN_FORM = false; + }; + }; + }; +} diff --git a/modules/home/containers/kanidm.nix b/modules/home/containers/kanidm.nix index 4098640..7f59f21 100644 --- a/modules/home/containers/kanidm.nix +++ b/modules/home/containers/kanidm.nix @@ -28,7 +28,7 @@ in { ]; environment = { KANIDM_VERSION = "2"; - KANIDM_BINDADDRESS = "[::]:8443"; + KANIDM_BINDADDRESS = "[::]:443"; KANIDM_DB_PATH = "/data/kanidm.db"; KANIDM_TLS_CHAIN = "/data/keys/wildcard_.tbmrs.nl.crt"; KANIDM_TLS_KEY = "/data/keys/wildcard_.tbmrs.nl.key"; diff --git a/modules/home/default.nix b/modules/home/default.nix index 000e70f..4e623b1 100644 --- a/modules/home/default.nix +++ b/modules/home/default.nix @@ -27,5 +27,6 @@ ./containers/caddy.nix ./containers/kanidm.nix ./containers/nginx.nix + ./containers/forgejo.nix ]; }