feat: Minecraft | add ATM10 and enable backups

This commit is contained in:
2025-11-15 13:22:23 +05:00
parent 0b01f40ac8
commit 72b006a7e4
3 changed files with 113 additions and 9 deletions

View File

@@ -5,7 +5,6 @@ metadata:
name: monifactory-data name: monifactory-data
namespace: minecraft namespace: minecraft
spec: spec:
storageClassName: longhorn-crypto
accessModes: accessModes:
- ReadWriteMany - ReadWriteMany
resources: resources:
@@ -18,7 +17,6 @@ metadata:
name: gtnh-data name: gtnh-data
namespace: minecraft namespace: minecraft
spec: spec:
storageClassName: longhorn-crypto
accessModes: accessModes:
- ReadWriteMany - ReadWriteMany
resources: resources:
@@ -31,7 +29,21 @@ metadata:
name: tfg-data name: tfg-data
namespace: minecraft namespace: minecraft
spec: spec:
storageClassName: longhorn-crypto accessModes:
- ReadWriteMany
resources:
requests:
storage: 10Gi
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: atm10-data
namespace: minecraft
labels:
recurring-job.longhorn.io/source: "enabled"
recurring-job.longhorn.io/backup: "enabled"
spec:
accessModes: accessModes:
- ReadWriteMany - ReadWriteMany
resources: resources:

View File

@@ -43,3 +43,18 @@ spec:
port: 25565 port: 25565
selector: selector:
app: tfg-server app: tfg-server
---
apiVersion: v1
kind: Service
metadata:
name: atm10-server
namespace: minecraft
labels:
app: atm10-server
spec:
type: ClusterIP
ports:
- name: atm10
port: 25565
selector:
app: atm10-server

View File

@@ -5,6 +5,7 @@ metadata:
name: monifactory-server name: monifactory-server
namespace: minecraft namespace: minecraft
spec: spec:
serviceName: monifactory-server
selector: selector:
matchLabels: matchLabels:
app: monifactory-server app: monifactory-server
@@ -13,6 +14,8 @@ spec:
labels: labels:
app: monifactory-server app: monifactory-server
spec: spec:
nodeSelector:
nodepool: worker
containers: containers:
- name: monifactory-server - name: monifactory-server
image: itzg/minecraft-server:java17 image: itzg/minecraft-server:java17
@@ -37,7 +40,7 @@ spec:
- name: INIT_MEMORY - name: INIT_MEMORY
value: 4G value: 4G
- name: MAX_MEMORY - name: MAX_MEMORY
value: 8G value: 12G
- name: ALLOW_FLIGHT - name: ALLOW_FLIGHT
value: "TRUE" value: "TRUE"
- name: ENABLE_ROLLING_LOGS - name: ENABLE_ROLLING_LOGS
@@ -53,7 +56,7 @@ spec:
memory: "4Gi" memory: "4Gi"
limits: limits:
cpu: 8 cpu: 8
memory: "8Gi" memory: "12Gi"
volumeMounts: volumeMounts:
- name: monifactory-data - name: monifactory-data
mountPath: /data mountPath: /data
@@ -68,6 +71,7 @@ metadata:
name: gtnh-server name: gtnh-server
namespace: minecraft namespace: minecraft
spec: spec:
serviceName: gtnh-server
selector: selector:
matchLabels: matchLabels:
app: gtnh-server app: gtnh-server
@@ -76,6 +80,8 @@ spec:
labels: labels:
app: gtnh-server app: gtnh-server
spec: spec:
nodeSelector:
nodepool: worker
containers: containers:
- name: gtnh-server - name: gtnh-server
image: itzg/minecraft-server:java25 image: itzg/minecraft-server:java25
@@ -97,7 +103,7 @@ spec:
- name: SKIP_GENERIC_PACK_UPDATE_CHECK - name: SKIP_GENERIC_PACK_UPDATE_CHECK
value: "true" value: "true"
- name: MEMORY - name: MEMORY
value: 6G value: 12G
- name: JVM_OPTS - name: JVM_OPTS
value: "-Dfml.readTimeout=180 -Dfml.queryResult=confirm @java9args.txt" value: "-Dfml.readTimeout=180 -Dfml.queryResult=confirm @java9args.txt"
- name: CUSTOM_JAR_EXEC - name: CUSTOM_JAR_EXEC
@@ -112,7 +118,7 @@ spec:
resources: resources:
limits: limits:
cpu: 8 cpu: 8
memory: "8Gi" memory: "12Gi"
volumeMounts: volumeMounts:
- name: gtnh-data - name: gtnh-data
mountPath: /data mountPath: /data
@@ -127,6 +133,7 @@ metadata:
name: tfg-server name: tfg-server
namespace: minecraft namespace: minecraft
spec: spec:
serviceName: tfg-server
selector: selector:
matchLabels: matchLabels:
app: tfg-server app: tfg-server
@@ -135,6 +142,8 @@ spec:
labels: labels:
app: tfg-server app: tfg-server
spec: spec:
nodeSelector:
nodepool: worker
containers: containers:
- name: tfg-server - name: tfg-server
image: itzg/minecraft-server:java17 image: itzg/minecraft-server:java17
@@ -159,7 +168,7 @@ spec:
- name: INIT_MEMORY - name: INIT_MEMORY
value: 2G value: 2G
- name: MAX_MEMORY - name: MAX_MEMORY
value: 8G value: 12G
- name: ALLOW_FLIGHT - name: ALLOW_FLIGHT
value: "TRUE" value: "TRUE"
- name: ENABLE_ROLLING_LOGS - name: ENABLE_ROLLING_LOGS
@@ -175,7 +184,7 @@ spec:
memory: "2Gi" memory: "2Gi"
limits: limits:
cpu: 6 cpu: 6
memory: "9Gi" memory: "12Gi"
volumeMounts: volumeMounts:
- name: tfg-data - name: tfg-data
mountPath: /data mountPath: /data
@@ -183,3 +192,71 @@ spec:
- name: tfg-data - name: tfg-data
persistentVolumeClaim: persistentVolumeClaim:
claimName: tfg-data claimName: tfg-data
---
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: atm10-server
namespace: minecraft
spec:
serviceName: atm10-server
selector:
matchLabels:
app: atm10-server
template:
metadata:
labels:
app: atm10-server
spec:
nodeSelector:
nodepool: worker
containers:
- name: atm10-server
image: itzg/minecraft-server:java21
env:
- name: EULA
value: "TRUE"
- name: MODE
value: "survival"
- name: MODPACK_PLATFORM
value: "AUTO_CURSEFORGE"
- name: CF_API_KEY
valueFrom:
secretKeyRef:
name: curseforge
key: credential
- name: CF_PAGE_URL
value: "https://www.curseforge.com/minecraft/modpacks/all-the-mods-10/files/7121777"
- name: VERSION
value: "1.21.1"
- name: INIT_MEMORY
value: 2G
- name: MAX_MEMORY
value: 15G
- name: ALLOW_FLIGHT
value: "TRUE"
- name: ENABLE_ROLLING_LOGS
value: "TRUE"
- name: USE_MEOWICE_FLAGS
value: "TRUE"
- name: CF_OVERRIDES_EXCLUSIONS
value: |
# Not applicable for server side
shaderpacks/**
ports:
- name: minecraft
containerPort: 25565
resources:
requests:
cpu: 2
memory: "2Gi"
limits:
cpu: 6
memory: "16Gi"
volumeMounts:
- name: atm10-data
mountPath: /data
volumes:
- name: atm10-data
persistentVolumeClaim:
claimName: atm10-data