{ 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 = [ "/data/ddns:/updater/data" "/etc/localtime:/etc/localtime:ro" ]; ports = ["0.0.0.0:8125:8000"]; # networks = [ "meow" ]; }; }; services.caddy = pkgs.lib.mkIf config.services.caddy.enable { virtualHosts."ddns.h.doloro.co.uk".extraConfig = '' reverse_proxy :8125 basic_auth { doloro $2a$14$FH.UkwC0PUsQ7IEV9XLAf.6/11KLsugCbrX/o6dPTx7NBlJWv3aiO } ''; }; }; }; }