+zammad helpdesk

This commit is contained in:
2025-09-09 14:17:29 +02:00
parent e3593466d7
commit 01cd32a1f2
8 changed files with 76 additions and 1 deletions

View File

@@ -31,6 +31,14 @@
hetzner-s3-az-intern-access-key = {
file = ../../secrets/hetzner-s3-az-intern-access-key.age;
};
zammad-pw = {
file = ../../secrets/zammad-pw.age;
owner = "zammad";
};
zammad-secret = {
file = ../../secrets/zammad-secret.age;
owner = "zammad";
};
};
};
}

View File

@@ -9,5 +9,6 @@
./postgres.nix
./traefik.nix
./vaultwarden.nix
./zammad.nix
];
}

View File

@@ -44,6 +44,7 @@
local n8n n8n scram-sha-256
local outline outline scram-sha-256
local vaultwarden vaultwarden scram-sha-256
local zammad zammad scram-sha-256
# Localhost connections (IPv4 and IPv6)
host all postgres 127.0.0.1/32 scram-sha-256
@@ -58,6 +59,9 @@
host vaultwarden vaultwarden 127.0.0.1/32 scram-sha-256
host vaultwarden vaultwarden ::1/128 scram-sha-256
host zammad zammad 127.0.0.1/32 scram-sha-256
host zammad zammad ::1/128 scram-sha-256
# Podman network connections for Baserow
host baserow baserow 10.89.0.0/24 scram-sha-256
host kestra kestra 10.89.0.0/24 scram-sha-256
@@ -72,7 +76,7 @@
services.postgresqlBackup = {
enable = true;
startAt = "03:10:00";
databases = ["baserow" "kestra" "librechat_rag" "n8n" "outline" "vaultwarden"];
databases = ["baserow" "kestra" "librechat_rag" "n8n" "outline" "vaultwarden" "zammad"];
};
services.pgadmin = {
enable = true;

View File

@@ -0,0 +1,34 @@
{config, ...}:{
services = {
zammad = {
enable = true;
openPorts = false;
port = 3034;
secretKeyBaseFile = "${config.age.secrets.zammad-secret.path}";
database = {
createLocally = false;
port = 5432;
host = "127.0.0.1";
passwordFile = "${config.age.secrets.zammad-pw.path}";
};
};
};
# Traefik configuration specific to littlelink
services.traefik.dynamicConfigOptions.http = {
services.zammad.loadBalancer.servers = [
{
url = "http://localhost:3034/";
}
];
routers.zammad = {
rule = "Host(`help.az-gruppe.com`)";
tls = {
certResolver = "ionos";
};
service = "zammad";
entrypoints = "websecure";
};
};
}