feat: use oink instead of ddns-updater.

This commit is contained in:
CronyAkatsuki 2026-02-01 20:30:26 +01:00
parent 8f2c37f80c
commit c9157abb81
3 changed files with 16 additions and 33 deletions

View file

@ -30,13 +30,6 @@
file = "${inputs.secrets}/secrets/traefik.age";
owner = "traefik";
};
ddns = {
file = "${inputs.secrets}/secrets/ddns.age";
path = "/var/lib/ddns-updater/config.json";
owner = "nobody";
group = "nogroup";
symlink = false;
};
linkwarden = {
file = "${inputs.secrets}/secrets/linkwarden.age";
owner = config.services.linkwarden.user;
@ -47,6 +40,12 @@
paperless-ngx = {
file = "${inputs.secrets}/secrets/paperless-ngx.age";
};
oink-apikey = {
file = "${inputs.secrets}/secrets/oink-apikey.age";
};
oink-secret-apikey = {
file = "${inputs.secrets}/secrets/oink-secret-apikey.age";
};
};
};
}

View file

@ -90,31 +90,15 @@
};
};
# Setup ddns-updater
services.ddns-updater = {
services.oink = {
enable = true;
environment = {
RESOLVER_ADDRESS = "127.0.0.1:53";
PERIOD = "2m30s";
PUBLICIP_DNS_TIMEOUT = "10s";
TZ = "Europe/Zagreb";
};
};
services.traefik.dynamicConfigOptions.http = {
services.ddns.loadBalancer.servers = [
domains = [
{
url = "http://localhost:8000";
domain = "cronyakatsuki.xyz";
subdomain = "home";
}
];
routers.ddns = {
rule = "Host(`ddns.home.cronyakatsuki.xyz`)";
tls = {
certResolver = "porkbun";
};
service = "ddns";
entrypoints = "websecure";
};
apiKeyFile = "${config.age.secrets.oink-apikey.path}";
secretApiKeyFile = "${config.age.secrets.oink-secret-apikey.path}";
};
}