36 lines
No EOL
859 B
Nix
36 lines
No EOL
859 B
Nix
{
|
|
config,
|
|
pkgs,
|
|
lib,
|
|
...
|
|
}:
|
|
{
|
|
virtualisation.oci-containers.containers = {
|
|
immich-ml = let
|
|
modelCache = "/opt/immich-ml";
|
|
in {
|
|
image = "ghcr.io/immich-app/immich-machine-learning:release";
|
|
autoStart = true;
|
|
pull = "newer";
|
|
ports = [ "3003:3003" ];
|
|
environment = {
|
|
REDIS_HOSTNAME = "immich-redis";
|
|
DB_HOSTNAME = "immich-db";
|
|
};
|
|
volumes = [ "${modelCache}:/cache" ];
|
|
networks = [ "immich-net" ];
|
|
};
|
|
};
|
|
|
|
systemd.services.create-immich-net = rec {
|
|
serviceConfig.Type = "oneshot";
|
|
requiredBy = with config.virtualisation.oci-containers; [
|
|
"${backend}-immich-ml.service"
|
|
];
|
|
before = requiredBy;
|
|
script = ''
|
|
${lib.getExe pkgs.podman} network exists immich-net || \
|
|
${lib.getExe pkgs.podman} network create immich-net
|
|
'';
|
|
};
|
|
} |