infra/homelab/immich.nix

62 lines
1.4 KiB
Nix
Raw Normal View History

2024-02-05 13:13:44 +00:00
{
lib,
config,
kubenix,
...
}: {
2023-12-09 22:42:14 +00:00
kubernetes.helm.releases.immich = {
namespace = "immich";
2023-12-09 22:42:14 +00:00
chart = kubenix.lib.helm.fetch {
repo = "https://immich-app.github.io/immich-charts";
chart = "immich";
version = "0.6.0";
sha256 = "p9fgqRMxRJ2rMBZZfMKuAIjp/N1/KgKCKLDhoXO0O6c=";
2023-12-09 22:42:14 +00:00
};
# arbitrary attrset passed as values to the helm release
values = {
image.tag = "v1.102.3";
2023-12-09 22:42:14 +00:00
machine-learning.enabled = false;
immich.persistence.library.existingClaim = "immich";
redis = {
enabled = true;
};
2023-12-09 22:42:14 +00:00
env = {
PGSSLMODE = "no-verify";
DB_PASSWORD.valueFrom.secretKeyRef = {
name = "postgres-immich";
key = "password";
2023-12-09 22:42:14 +00:00
};
DB_HOSTNAME.value = "192.168.50.236";
2023-12-09 22:42:14 +00:00
};
server.ingress.main = {
enabled = true;
annotations = {
"cert-manager.io/cluster-issuer" = "le-issuer";
2023-12-09 22:42:14 +00:00
};
2024-02-05 13:13:44 +00:00
tls = [
{
hosts = ["photos.gmem.ca"];
}
];
2023-12-09 22:42:14 +00:00
hosts = [
{
host = "photos.gmem.ca";
2024-02-05 13:13:44 +00:00
paths = [{path = "/";}];
2023-12-09 22:42:14 +00:00
}
];
};
};
};
kubernetes.resources.persistentVolumeClaims.immich = {
metadata = {
name = "immich";
namespace = "immich";
};
2023-12-09 22:42:14 +00:00
spec = {
accessModes = ["ReadWriteOnce"];
resources.requests.storage = "50Gi";
};
};
}