23 lines
915 B
Nix

{ config, pkgs, ... }:
{
environment.etc."docker/immich/docker-compose.yml".source = ./immich/docker-compose.yml;
environment.etc."docker/immich/.env".source = ./immich/.env;
environment.etc."docker/immich/hwaccel.ml.yml".source = ./immich/hwaccel.ml.yml;
environment.etc."docker/immich/hwaccel.transcoding.yml".source = ./immich/hwaccel.transcoding.yml;
systemd.services.immich = {
description = "Immich Docker Compose Service";
after = [ "network-online.target" ];
wants = [ "network-online.target" ];
serviceConfig = {
ExecStart = "${pkgs.docker-compose}/bin/docker-compose -f /etc/docker/immich/docker-compose.yml up";
ExecStop = "${pkgs.docker-compose}/bin/docker-compose -f /etc/docker/immich/docker-compose.yml down";
WorkingDirectory = "/etc/docker/immich";
Restart = "always";
RestartSec = 10;
};
wantedBy = [ "multi-user.target" ];
};
}