dotfiles/container/proxitok/default.nix

62 lines
1.4 KiB
Nix
Raw Normal View History

2023-03-20 16:06:11 +00:00
{ config, lib, ... }:
2023-02-28 13:55:57 +00:00
{
virtualisation.oci-containers.containers = {
proxitok-web = {
image = "ghcr.io/pablouser1/proxitok:master";
dependsOn = [ "proxitok-signer" ];
ports = [ "127.0.0.1:8005:80" ];
environmentFiles = [ config.age.secrets.proxitok-environment.path ];
volumes = [
"/etc/container-proxitok/cache:/cache"
];
extraOptions = [
"--label=com.centurylinklabs.watchtower.enable=true"
"--label=io.containers.autoupdate=registry"
];
};
2023-02-28 13:55:57 +00:00
proxitok-signer = {
image = "ghcr.io/pablouser1/signtok:master";
extraOptions = [
"--label=com.centurylinklabs.watchtower.enable=true"
"--label=io.containers.autoupdate=registry"
];
2023-02-28 13:55:57 +00:00
};
};
2023-02-28 14:22:22 +00:00
systemd.tmpfiles.rules = [
"d /etc/container-proxitok/cache 0755 33 33"
];
services.redis.servers.proxitok = {
enable = true;
bind = "10.88.0.1";
port = 6381;
databases = 1;
save = [ ];
appendFsync = "no";
settings = {
protected-mode = "no";
};
};
networking.firewall.interfaces."podman+".allowedTCPPorts = [ 6381 ];
services.nginx.virtualHosts."tictac.daniel.sx" = {
listenAddresses = [ "100.108.165.26" "[fd7a:115c:a1e0:ab12:4843:cd96:626c:a51a]" ];
2023-04-03 13:03:52 +00:00
quic = true;
http3 = true;
2023-03-06 09:21:34 +00:00
onlySSL = true;
useACMEHost = "daniel.sx";
2023-02-28 13:55:57 +00:00
locations."/" = {
recommendedProxySettings = true;
proxyPass = "http://127.0.0.1:8005";
2023-02-28 13:55:57 +00:00
};
};
}