nixos/applications/games.nix

93 lines
No EOL
2.4 KiB
Nix

{ ... }: {
imports = [];
/*
backups = [
"/etc/silver_satisfactory/config/"
"/etc/silver_valheim/config/"
];
*/
# since this is going to be pulled into a machiene that has skynet_dns we dont need to import it above
# gonna use it to create sub-subdomains for each game server
skynet_dns.records = {
external = [];
cname = [
# create a sub-subdomain for each game
"mc_compsoc.games CNAME games"
"mc_compsoc2.games CNAME games"
];
};
# arion is one way to use docker on nixos
virtualisation.arion = {
backend = "docker";
projects = {
mc_compsoc.settings = {
docker-compose.raw.networks.default.name = "mc_compsoc";
services.mc_compsoc = {
service.image = "nimmis/spigot:latest";
# setting these here as they arent special
service.environment = {
# this is what it last ran on
SPIGOT_VER="1.18.2";
EULA="true";
};
service.volumes = [
# figure out what this needs and use itt o get up and running
# /home/nimmis/mc-srv:/minecraft
"/etc/games/minecraft/compsoc/test/config:/minecraft"
];
service.ports = [
"25565:25565/tcp"
];
};
};
mc_compsoc2.settings = {
docker-compose.raw.networks.default.name = "mc_compsoc2";
services.mc_compsoc = {
service.image = "nimmis/spigot:latest";
# setting these here as they arent special
service.environment = {
# this is what it last ran on
SPIGOT_VER="1.18.2";
EULA="true";
};
service.volumes = [
# figure out what this needs and use itt o get up and running
# /home/nimmis/mc-srv:/minecraft
"/etc/games/minecraft/compsoc/test2/config:/minecraft"
];
service.ports = [
"25566:25565/tcp"
];
};
};
};
};
services = {
nginx.virtualHosts = {
"mc_compsoc.games.skynet.ie" = {
forceSSL = true;
useACMEHost = "skynet";
locations."/".proxyPass = "http://localhost:25565";
};
"mc_compsoc2.games.skynet.ie" = {
forceSSL = true;
useACMEHost = "skynet";
locations."/".proxyPass = "http://localhost:25566";
};
};
};
}