33 lines
1.1 KiB
Nix
33 lines
1.1 KiB
Nix
{ domainName, ... }: {
|
|
services.cron = {
|
|
enable = true;
|
|
systemCronJobs = [
|
|
''0 0 * * * root mkdir -p /Storage/Data/Docker/sysctl.io/letsencrypt/; rsync -avr --delete root@framework-server:/Storage/Data/Docker/sysctl.io/letsencrypt/ /Storage/Data/Docker/sysctl.io/letsencrypt/''
|
|
];
|
|
};
|
|
|
|
# Containers
|
|
virtualisation.oci-containers.containers."derp" = {
|
|
image = "docker.io/fredliang/derper";
|
|
environment = {
|
|
DERP_ADDR = ":1443";
|
|
DERP_CERT_DIR = "/app/certs";
|
|
DERP_CERT_MODE = "manual";
|
|
DERP_DOMAIN = domainName;
|
|
DERP_STUN = "true";
|
|
DERP_VERIFY_CLIENTS = "true";
|
|
DERP_HTTP_PORT = "-1";
|
|
};
|
|
volumes = [
|
|
"/var/run/tailscale/tailscaled.sock:/var/run/tailscale/tailscaled.sock:ro"
|
|
"/Storage/Data/Docker/sysctl.io/letsencrypt/external/*.sysctl.io/public.crt:/app/certs/${domainName}.crt:ro"
|
|
"/Storage/Data/Docker/sysctl.io/letsencrypt/external/*.sysctl.io/private.key:/app/certs/${domainName}.key:ro"
|
|
];
|
|
ports = [
|
|
"3478:3478/udp"
|
|
"1443:1443/tcp"
|
|
];
|
|
log-driver = "journald";
|
|
extraOptions = [ "--network=host" ];
|
|
};
|
|
}
|