enable n8n on arrow

This commit is contained in:
Noah Masur 2024-05-06 14:26:24 -04:00
parent 0c399fc269
commit 452afd70c1
No known key found for this signature in database
4 changed files with 13 additions and 12 deletions

View File

@ -233,6 +233,7 @@
irc = "irc.${baseName}";
metrics = "metrics.${baseName}";
minecraft = "minecraft.${baseName}";
n8n = "n8n.${baseName}";
prometheus = "prom.${baseName}";
paperless = "paper.${baseName}";
secrets = "vault.${baseName}";

View File

@ -22,6 +22,7 @@
cloudflare.enable = true;
services.openssh.enable = true;
services.caddy.enable = true;
services.n8n.enable = true;
# nix-index seems to eat up too much memory for Vultr
home-manager.users.${globals.user}.programs.nix-index.enable = inputs.nixpkgs.lib.mkForce false;

View File

@ -125,6 +125,10 @@
type = lib.types.str;
description = "Hostname for IRC services.";
};
n8n = lib.mkOption {
type = lib.types.str;
description = "Hostname for n8n automation.";
};
transmission = lib.mkOption {
type = lib.types.str;
description = "Hostname for peer2peer downloads (Transmission).";

View File

@ -4,18 +4,9 @@
{ config, lib, ... }:
{
options = {
n8nServer = lib.mkOption {
type = lib.types.nullOr lib.types.str;
description = "Hostname for n8n automation";
default = null;
};
};
config = lib.mkIf (config.n8nServer != null) {
config = lib.mkIf config.services.n8n.enable {
services.n8n = {
enable = true;
settings = {
n8n = {
listenAddress = "127.0.0.1";
@ -24,13 +15,17 @@
};
};
# Configure Cloudflare DNS to point to this machine
services.cloudflare-dyndns.domains = [ config.hostnames.n8n ];
# Allow web traffic to Caddy
caddy.routes = [
{
match = [ { host = [ config.n8nServer ]; } ];
match = [ { host = [ config.hostnames.n8n ]; } ];
handle = [
{
handler = "reverse_proxy";
upstreams = [ { dial = "localhost:5678"; } ];
upstreams = [ { dial = "localhost:${builtins.toString config.services.n8n.settings.n8n.port}"; } ];
}
];
}