53 lines
1.1 KiB
Nix
53 lines
1.1 KiB
Nix
{ config, lib, ... }:
|
|
|
|
with lib;
|
|
|
|
let
|
|
cfg = config.settings.containers.caddy;
|
|
in {
|
|
options = {
|
|
settings.containers.caddy.enable = lib.mkOption {
|
|
type = lib.types.bool;
|
|
default = false;
|
|
description = ''
|
|
Enable caddy container
|
|
'';
|
|
};
|
|
};
|
|
|
|
config = mkIf cfg.enable {
|
|
services.podman.containers.caddy = {
|
|
image = "localhost/tboomers/caddy-custom:latest";
|
|
network = "proxy";
|
|
ports = [
|
|
"1080:80"
|
|
"1443:443"
|
|
];
|
|
volumes = [
|
|
"%h/containers/caddy/Caddyfile:/etc/caddy/Caddyfile"
|
|
"%h/containers/caddy/acme_key:/etc/caddy/acme_key"
|
|
"%h/containers/caddy/data:/data"
|
|
];
|
|
};
|
|
|
|
home.file."containers/caddy/Caddyfile".text = ''
|
|
*.tbmrs.nl, tbmrs.nl {
|
|
tls {
|
|
dns transip xeovalyte /etc/caddy/acme_key
|
|
resolvers 1.1.1.1
|
|
}
|
|
|
|
@root host tbmrs.nl
|
|
handle @root {
|
|
respond "Hello there"
|
|
}
|
|
|
|
@lldap host ldap.tbmrs.nl
|
|
handle @lldap {
|
|
reverse_proxy lldap:17170
|
|
}
|
|
}
|
|
'';
|
|
};
|
|
}
|