feat: add homelab deployment configs, documentation, and automation scripts

This commit is contained in:
2026-11-12 16:57:08 -05:00
parent 1228b957de
commit 5a70460e89
270 changed files with 9709 additions and 47 deletions

View File

@@ -0,0 +1,42 @@
apiVersion: yggdrasil.snarfnet.net/v1alpha1
kind: GameSeed
metadata:
name: enshrouded
displayName: "Enshrouded Dedicated Server"
version: "1.0.0"
spec:
game:
appId: 2278520
branch: public
autoUpdate: true
server:
name: "SnarfNet Enshrouded Sanctuary"
passwordSecret: "ENSHROUDED_SERVER_PASSWORD"
maxPlayers: 16
saveDirectory: "/opt/game-servers/enshrouded/savegame"
network:
ip: "140.44.44.80"
ports:
- port: 15636
protocol: UDP
description: "Game Query & Traffic"
- port: 15637
protocol: UDP
description: "Steam Query Port"
resources:
cpuLimit: "8"
memoryLimit: "16Gi"
memoryReservation: "8Gi"
runtime:
image: "skarab42/enshrouded-server:latest"
restartPolicy: unless-stopped
environment:
SERVER_NAME: "SnarfNet Enshrouded Sanctuary"
SERVER_SLOTS: 16
GAME_PORT: 15636
QUERY_PORT: 15637
backup:
schedule: "0 4 * * *" # Daily 04:00 AM
retentionDays: 14
targetPath: "/mnt/nas/game-backups/enshrouded"

View File

@@ -0,0 +1,41 @@
apiVersion: yggdrasil.snarfnet.net/v1alpha1
kind: GameSeed
metadata:
name: farming-simulator-25
displayName: "Farming Simulator 25 Dedicated Server"
version: "1.0.0"
spec:
game:
appId: 2300320
branch: public
autoUpdate: true
server:
name: "SnarfNet FS25 Countryside"
passwordSecret: "FS25_SERVER_PASSWORD"
adminPasswordSecret: "FS25_ADMIN_PASSWORD"
maxPlayers: 16
saveDirectory: "/opt/game-servers/fs25/savegame"
network:
ip: "140.44.44.80"
ports:
- port: 10823
protocol: TCP
description: "Game Web Management & Client Connection"
- port: 10823
protocol: UDP
description: "Game Network Traffic"
resources:
cpuLimit: "6"
memoryLimit: "12Gi"
memoryReservation: "6Gi"
runtime:
image: "thijsvanloef/farming-simulator-25:latest"
restartPolicy: unless-stopped
environment:
SERVER_NAME: "SnarfNet FS25 Countryside"
GAME_PORT: 10823
backup:
schedule: "0 4 * * *"
retentionDays: 14
targetPath: "/mnt/nas/game-backups/farming-simulator-25"

View File

@@ -0,0 +1,44 @@
apiVersion: yggdrasil.snarfnet.net/v1alpha1
kind: GameSeed
metadata:
name: stationeers
displayName: "Stationeers Dedicated Server"
version: "1.0.0"
spec:
game:
appId: 600760
branch: public
autoUpdate: true
server:
name: "SnarfNet Stationeers Moonbase"
worldName: "Moon"
passwordSecret: "STATIONEERS_SERVER_PASSWORD"
maxPlayers: 10
saveDirectory: "/opt/game-servers/stationeers/saves"
network:
ip: "140.44.44.80"
ports:
- port: 27016
protocol: UDP
description: "Game Traffic Port"
- port: 27015
protocol: UDP
description: "Steam Query Port"
resources:
cpuLimit: "4"
memoryLimit: "8Gi"
memoryReservation: "4Gi"
runtime:
image: "sprits/stationeers-server:latest"
restartPolicy: unless-stopped
environment:
SERVER_NAME: "SnarfNet Stationeers Moonbase"
WORLD_NAME: "Moon"
GAME_PORT: 27016
QUERY_PORT: 27015
AUTO_SAVE_INTERVAL: 300
backup:
schedule: "0 4 * * *"
retentionDays: 14
targetPath: "/mnt/nas/game-backups/stationeers"

View File

@@ -0,0 +1,47 @@
apiVersion: yggdrasil.snarfnet.net/v1alpha1
kind: GameSeed
metadata:
name: valheim
displayName: "Valheim Dedicated Server"
version: "1.0.0"
spec:
game:
appId: 896660
branch: public
autoUpdate: true
server:
name: "SnarfNet Valheim Valhalla"
worldName: "Snarfheim"
passwordSecret: "VALHEIM_SERVER_PASSWORD"
crossplay: true
maxPlayers: 10
saveDirectory: "/opt/game-servers/valheim/worlds"
network:
ip: "140.44.44.80"
ports:
- port: 2456
protocol: UDP
description: "Game Traffic Port"
- port: 2457
protocol: UDP
description: "Steam Query Port"
resources:
cpuLimit: "6"
memoryLimit: "8Gi"
memoryReservation: "4Gi"
runtime:
image: "lloesche/valheim-server:latest"
restartPolicy: unless-stopped
environment:
SERVER_NAME: "SnarfNet Valheim Valhalla"
WORLD_NAME: "Snarfheim"
SERVER_PORT: 2456
SERVER_PUBLIC: 1
CROSSPLAY: "true"
UPDATE_CRON: "0 5 * * *"
BEPINEX: "false"
backup:
schedule: "0 4 * * *"
retentionDays: 14
targetPath: "/mnt/nas/game-backups/valheim"

View File

@@ -0,0 +1,43 @@
apiVersion: yggdrasil.snarfnet.net/v1alpha1
kind: GameSeed
metadata:
name: vrising
displayName: "V Rising Dedicated Server"
version: "1.0.0"
spec:
game:
appId: 1829350
branch: public
autoUpdate: true
server:
name: "SnarfNet V Rising Vampire Lair"
saveName: "SnarfNet_Vampires"
passwordSecret: "VRISING_SERVER_PASSWORD"
maxPlayers: 20
saveDirectory: "/opt/game-servers/vrising/Saves"
network:
ip: "140.44.44.80"
ports:
- port: 9876
protocol: UDP
description: "Game Traffic Port"
- port: 9877
protocol: UDP
description: "Query Port"
resources:
cpuLimit: "6"
memoryLimit: "8Gi"
memoryReservation: "4Gi"
runtime:
image: "trueosiris/vrising:latest"
restartPolicy: unless-stopped
environment:
SERVERNAME: "SnarfNet V Rising Vampire Lair"
SAVENAME: "SnarfNet_Vampires"
GAMEPORT: 9876
QUERYPORT: 9877
backup:
schedule: "0 4 * * *"
retentionDays: 14
targetPath: "/mnt/nas/game-backups/vrising"