From 5828a9d09ebbbb283de5a1edf9e9c1ad44952669 Mon Sep 17 00:00:00 2001 From: Joey Hafner Date: Sat, 1 Feb 2025 01:29:43 -0800 Subject: [PATCH] Feature: Init stack.nix for minecraft. --- homelab/stacks/minecraft/.env | 2 -- homelab/stacks/minecraft/docker-compose.yml | 38 +++++++-------------- homelab/stacks/minecraft/e10.env | 7 ---- homelab/stacks/minecraft/exporter.env | 1 - homelab/stacks/minecraft/minecraft.env | 4 --- homelab/stacks/minecraft/stack.nix | 17 +++++++++ 6 files changed, 29 insertions(+), 40 deletions(-) delete mode 100644 homelab/stacks/minecraft/.env delete mode 100644 homelab/stacks/minecraft/e10.env delete mode 100644 homelab/stacks/minecraft/exporter.env delete mode 100644 homelab/stacks/minecraft/minecraft.env create mode 100644 homelab/stacks/minecraft/stack.nix diff --git a/homelab/stacks/minecraft/.env b/homelab/stacks/minecraft/.env deleted file mode 100644 index 74695ee9..00000000 --- a/homelab/stacks/minecraft/.env +++ /dev/null @@ -1,2 +0,0 @@ -DOCKER_DATA=/mnt/iscsi/barbarian/minecraft -DOCKER_CONFIG=/home/admin/homelab/jafner-net/config/minecraft diff --git a/homelab/stacks/minecraft/docker-compose.yml b/homelab/stacks/minecraft/docker-compose.yml index 279605aa..4dbea180 100644 --- a/homelab/stacks/minecraft/docker-compose.yml +++ b/homelab/stacks/minecraft/docker-compose.yml @@ -9,40 +9,26 @@ services: - 25565:25565 command: --api-binding=0.0.0.0:25566 --mapping=e9.jafner.net=192.168.1.135:25566 - exporter-minecraft: - image: itzg/mc-monitor:latest - container_name: minecraft_exporter - command: export-for-prometheus - restart: "no" - networks: - - monitoring - - minecraft - env_file: - - path: ./exporter.env - required: true - labels: - - traefik.enable=false - e10: image: itzg/minecraft-server:latest user: 1001:1001 container_name: minecraft_e10 - env_file: - - path: ./minecraft.env - required: true - - path: ./minecraft_secrets.env - required: false - - path: ./e10.env - required: true + environment: + EULA: TRUE + OPS: jafner425,mollymsmom,galaxysqvid + ENABLE_RCON: true + UID: 1001 + GID: 1001 + MEMORY: 6G + VERSION: 1.21 + MOD_PLATFORM: AUTO_CURSEFORGE + TYPE: AUTO_CURSEFORGE + CF_PAGE_URL: https://www.curseforge.com/minecraft/modpacks/enigmatica10 volumes: - - $DOCKER_DATA/e10:/data:rw + - $APPDATA/e10:/data:rw networks: - minecraft restart: "no" networks: minecraft: - monitoring: - external: true -volumes: - mc-router: diff --git a/homelab/stacks/minecraft/e10.env b/homelab/stacks/minecraft/e10.env deleted file mode 100644 index 3daa17aa..00000000 --- a/homelab/stacks/minecraft/e10.env +++ /dev/null @@ -1,7 +0,0 @@ -UID=1001 -GID=1001 -MEMORY=6G -VERSION=1.21 -MOD_PLATFORM=AUTO_CURSEFORGE -TYPE=AUTO_CURSEFORGE -CF_PAGE_URL=https://www.curseforge.com/minecraft/modpacks/enigmatica10 \ No newline at end of file diff --git a/homelab/stacks/minecraft/exporter.env b/homelab/stacks/minecraft/exporter.env deleted file mode 100644 index 7fdb57df..00000000 --- a/homelab/stacks/minecraft/exporter.env +++ /dev/null @@ -1 +0,0 @@ -EXPORT_SERVERS="e10" diff --git a/homelab/stacks/minecraft/minecraft.env b/homelab/stacks/minecraft/minecraft.env deleted file mode 100644 index b908c1d0..00000000 --- a/homelab/stacks/minecraft/minecraft.env +++ /dev/null @@ -1,4 +0,0 @@ -EULA=TRUE -OPS=jafner425,mollymsmom,galaxysqvid -ENABLE_RCON=true -RCON_PASSWORD=***REMOVED*** diff --git a/homelab/stacks/minecraft/stack.nix b/homelab/stacks/minecraft/stack.nix new file mode 100644 index 00000000..5e615c67 --- /dev/null +++ b/homelab/stacks/minecraft/stack.nix @@ -0,0 +1,17 @@ +{ sys, ... }: let stack = "minecraft"; in { + home-manager.users."${sys.username}".home.file = { + "${stack}" = { + enable = true; + recursive = true; + source = ./.; + target = "stacks/${stack}/"; + }; + "${stack}/.env" = { + enable = true; + text = '' + APPDATA=${sys.dataDirs.appdata}/${stack} + ''; + target = "stacks/${stack}/.env"; + }; + }; +} \ No newline at end of file