flake/modules/nixos/server/containers/default.nix

54 lines
1.4 KiB
Nix

{ pkgs, lib, config, ... }: {
options.mods.containers = {
enable = lib.mkEnableOption {
default = false;
description = "enables steam container";
};
};
imports = [
./steam.nix
];
config = lib.mkIf config.mods.containers.enable {
virtualisation.docker.enable = true;
virtualisation.docker.rootless = {
enable = true;
setSocketVariable = true;
};
networking.nat = {
enable = true;
internalInterfaces = ["ve-+"];
externalInterface = "enp0s31f6";
};
networking.networkmanager.unmanaged = [ "interface-name:ve-*" ];
networking = {
bridges.br0.interfaces = [ "enp0s31f6" ]; # Adjust interface accordingly
# Get bridge-ip with DHCP
useDHCP = false;
interfaces."br0".useDHCP = true;
# Set bridge-ip static
interfaces."br0".ipv4.addresses = [{
address = "192.168.1.171";
prefixLength = 24;
}];
defaultGateway = "192.168.1.1";
nameservers = [ "192.168.1.1" ];
};
# networking.firewall.allowedTCPPorts = [ 4713 6000 ];
# hardware.pulseaudio = {
# enable = true;
# systemWide = true;
# support32Bit = true;
# tcp = { enable = true; anonymousClients = { allowedIpRanges = ["127.0.0.1" "192.168.100.0/24"]; }; };
# };
environment.systemPackages = with pkgs; [
xorg.xhost
];
};
}