nix-config/systems/common/services/immich.nix

44 lines
896 B
Nix
Raw Normal View History

2026-01-31 23:30:39 -04:00
{
lib,
pkgs,
...
}:
{
services.immich = {
enable = true;
port = 2283;
host = "0.0.0.0";
};
security.acme = {
acceptTerms = true;
defaults.email = "kellyl@sysrq.ca";
};
services.caddy = {
enable = true;
virtualHosts = {
"immich.sysrq.ca" = {
extraConfig = ''
encode gzip
# Automatically handle HTTPS via Lets Encrypt
# Caddy will request and renew certs for immich.sysrq.ca
reverse_proxy http://192.168.0.60:2283 {
# If Immich uses WebSockets, Caddy will proxy them automatically
# Add headers if you want forward real client IP
header_up X-Real-IP {remote_host}
header_up X-Forwarded-For {remote_host}
header_up Host {host}
}
'';
};
};
};
networking.firewall.allowedTCPPorts = [ 80 443 2283 ];
}