Files
nix-config/modules/apps/ollama/default.nix
2024-05-31 16:11:42 -05:00

41 lines
781 B
Nix

{
lib,
pkgs,
config,
...
}:
with lib;
let
cfg = config.nas-apps.ollama;
in
{
imports = [ ./options.nix ];
config = mkIf cfg.enable {
systemd.services.ollama-docker = {
path = [
pkgs.bash
pkgs.docker
];
script = ''
set -e
exec docker run \
--rm \
--gpus all \
--runtime=nvidia \
--name=${cfg.name} \
-e PUID=${cfg.puid} \
-e PGID=${cfg.pgid} \
-e TZ=${cfg.timeZone} \
-e 'NVIDIA_DRIVER_CAPABILITIES'='all' \
-e 'NVIDIA_VISIBLE_DEVICES'='all' \
-p ${cfg.port}:11434 \
-v '${cfg.configPath}:/root/.ollama' \
${cfg.image}:latest
'';
wantedBy = [ "multi-user.target" ];
};
};
}