roles/dockerserver: add role
This commit is contained in:
@@ -15,6 +15,10 @@
|
||||
qemu.enable = true;
|
||||
spice.enable = true;
|
||||
|
||||
dockerserver = {
|
||||
enable = true;
|
||||
};
|
||||
|
||||
minecraftserver = {
|
||||
enable = true;
|
||||
};
|
||||
|
38
roles/dockerserver.nix
Normal file
38
roles/dockerserver.nix
Normal file
@@ -0,0 +1,38 @@
|
||||
# Module: roles/dockerserver
|
||||
# Enables a Docker server
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
cfg = config.dockerserver;
|
||||
in
|
||||
{
|
||||
options.dockerserver = {
|
||||
enable = mkEnableOption "Enables dockerserver role";
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
environment.systemPackages = with pkgs; [
|
||||
docker
|
||||
docker-compose
|
||||
];
|
||||
|
||||
virtualisation.docker = {
|
||||
enable = true;
|
||||
enableOnBoot = true;
|
||||
storageDriver = "overlay2";
|
||||
autoPrune = {
|
||||
enable = true;
|
||||
persistent = true;
|
||||
};
|
||||
};
|
||||
|
||||
users.users.etorres.extraGroups = [ "docker" ];
|
||||
};
|
||||
}
|
@@ -20,20 +20,6 @@ in
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
environment.systemPackages = with pkgs; [
|
||||
docker
|
||||
docker-compose
|
||||
];
|
||||
|
||||
virtualisation.docker = {
|
||||
enable = true;
|
||||
enableOnBoot = true;
|
||||
storageDriver = "overlay2";
|
||||
autoPrune.enable = true;
|
||||
};
|
||||
|
||||
users.users.etorres.extraGroups = [ "docker" ];
|
||||
|
||||
networking.firewall.allowedTCPPorts = [ 25565 ];
|
||||
};
|
||||
}
|
||||
|
@@ -10,6 +10,7 @@
|
||||
imports = [
|
||||
./dbserver-mariadb.nix
|
||||
./dbserver-postgresql.nix
|
||||
./dockerserver.nix
|
||||
./logserver.nix
|
||||
./mailserver.nix
|
||||
./minecraftserver.nix
|
||||
@@ -21,6 +22,7 @@
|
||||
|
||||
dbserver-mariadb.enable = lib.mkDefault false;
|
||||
dbserver-postgresql.enable = lib.mkDefault false;
|
||||
dockerserver.enable = lib.mkDefault false;
|
||||
logserver.enable = lib.mkDefault false;
|
||||
mailserver.enable = lib.mkDefault false;
|
||||
minecraftserver.enable = lib.mkDefault false;
|
||||
|
Reference in New Issue
Block a user