nix/modules/nixos/virtualisation/docker/default.nix

25 lines
841 B
Nix
Raw Normal View History

{ 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;
};
};
};
}