{ den, __findFile, modules, ... }: { # Basic traefik modules.services.provides.ddns = { nixos = { config, pkgs, ... }: let ddnsImg = pkgs.dockerTools.pullImage { imageName = "qmcgaw/ddns-updater"; imageDigest = "sha256:ee16ab4f6203bf9e5b0925d38a0b4ebf2d9f23771f933cfb2f5a2dbd5f9a2f88"; finalImageName = "qmcgaw/ddns-updater"; finalImageTag = "latest"; sha256 = "sha256-dMCHkvoFaORmGwbIM9io4Vc9fq+wBks25k2dmnW7naI="; arch = "arm64"; }; in { virtualisation.oci-containers.containers = { ddns = { image = "qmcgaw/ddns-updater"; imageFile = ddnsImg; volumes = [ "/run/dbus:/run/dbus:ro" "/etc/localtime:/etc/localtime:ro" ]; ports = [ "0.0.0.0:8123:8123" ]; # networks = [ "meow" ]; }; }; networking.firewall = { allowedTCPPorts = [ 8123 ]; allowedUDPPortRanges = [ ]; }; }; }; }