24 lines
841 B
Nix
24 lines
841 B
Nix
{ config, lib, ... }: {
|
|
options.snowflake.virtualisation.docker = {
|
|
enable = lib.mkEnableOption "enable docker daemon";
|
|
extraOptions = lib.mkOption {
|
|
type = lib.types.str;
|
|
default = "";
|
|
description = "extra options to pass to docker compose";
|
|
};
|
|
# Notes: You can use the following command to use GPU inside docker container
|
|
# docker run -it --rm --device nvidia.com/gpu=all ubuntu nvidia-smi
|
|
enableNvidia = lib.mkEnableOption "enable nvidia with docker";
|
|
};
|
|
|
|
config = lib.mkIf config.snowflake.virtualisation.docker.enable {
|
|
hardware.nvidia-container-toolkit.enable =
|
|
config.snowflake.virtualisation.docker.enableNvidia;
|
|
virtualisation = {
|
|
docker = {
|
|
enable = true;
|
|
extraOptions = config.snowflake.virtualisation.docker.extraOptions;
|
|
};
|
|
};
|
|
};
|
|
}
|