forked from gilesknap/k3s-minecraft
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathminecraft-helm.yaml
More file actions
131 lines (121 loc) · 4.64 KB
/
Copy pathminecraft-helm.yaml
File metadata and controls
131 lines (121 loc) · 4.64 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
# These are value overrides for the helm chart defined here
# https://github.com/itzg/minecraft-server-charts
# It contains the most common parameters, but for even more settings, see
# https://github.com/itzg/minecraft-server-charts/blob/master/charts/minecraft/values.yaml
# to use this file execute the following two commands
# helm repo add minecraft-server-charts https://itzg.github.io/minecraft-server-charts/
# helm upgrade --install RELEASE_NAME -f THIS_FILE.yaml --set minecraftServer.eula=true,rcon.password=YOUR_PWD minecraft-server-charts/minecraft
startupProbe:
command:
- mc-health
enabled: true
failureThreshold: 60
periodSeconds: 10
# Common minecraft server settings
minecraftServer:
# may be SNAPSHOT or a specific version number
version: LATEST
# allowed players' names comma separated, leave blank to allow any players
whitelist:
# comma separated admin players' names
ops:
# always set game mode when a player connects
forcegameMode: true
# choose a seed for the starting world
levelSeed:
# size of the world in blocks radius from spawn point (default is 29999984)
maxWorldSize: 10000
# default game mode for players creative,adventure,survival or spectator
gameMode: creative
# message in the launcher
motd: "Welcome to Minecraft on Kubernetes"
# player vs player enabled
pvp: false
# REQUIRED this means you get nodePort exposed on all nodes and will get
# directed to the correct node if you connect to any
serviceType: NodePort
# restore the world from a backup on first execution (requires NFS volume - see below)
downloadWorldUrl:
# external port must be unique across all mc server instances on a given node
nodePort: 30100
# how far from the player are chunks rendered on the server
# 10 is default, larger is nice on high spec hardware
# I believe 25 is the client max so larger is wasted
viewDistance: 10
# memory to allocate to the jvm - if you change this also change the K8s resource request
memory: 2g
rcon:
# enable rcon for remote control - set to false if not required
enabled: false
# external port must be unique across all mc server instances
nodePort: 30101
# required
serviceType: NodePort
password: "penguin"
# UNCOMMENT and supply an NFS mounted folder if you have backups of minecraft server
# worlds that you would like to use as the starting point for the new server
# extraVolumes:
# # define where the volume mounts in the container
# - volumeMounts:
# - name: bigdisk
# mountPath: /share/bigdisk
# readOnly: true
# # define the remote nfs mount to attach to above
# volumes:
# - name: bigdisk
# nfs:
# server: 192.168.86.32
# path: /share/bigdisk
extraEnv:
# recommended rolling logs for saving disk
ENABLE_ROLLING_LOGS: true
# if this is true then minecraftServer properties above are always applied
# on every restart, if false they only apply at first run
OVERRIDE_SERVER_PROPERTIES: true
# if this is true then downloadWorldUrl is always loaded on restart
# useful for resetting the world but should be reset to false afterwards
# WARNING: setting this to true deletes your previous world data
FORCE_WORLD_COPY: false
DEBUG: true
STOP_DURATION: 180
DEBUG_EXEC: true
# required to save the world in persistent local-path storage (k3s default Storage Class)
# by default this goes in /var/lib/rancher/k3s/storage on the executing node.
# NOTE this ties the deployment to the first node it spins up on,
# we could perhaps use an NFS mount to avoid this
persistence:
annotations: {}
dataDir:
enabled: true
Size: 1Gi
# K8S resources to grant the pod. memory must be the same as java memory above
# I've also found that limit should be a little higher.
# For processors - if you want to run lots of servers but only use one or two at
# a time then it is OK to set a low request and a higher limit. Minecraft servers
# can make use of quite a few cpus if available and this is especially helpful
# at startup time
resources:
requests:
memory: 2Gi
cpu: 4
limits:
memory: 3Gi
cpu: 6
# UNCOMMENT to choose a single node to run on
# nodeSelector:
# kubernetes.io/hostname: my-worker-node-name
# UNCOMMENT to choose a range of nodes to run on
# (change 'key' for other criteria e.g. processor architecture
# use 'kubectl get nodes --show-labels' for full set of criteria )
# affinity:
# nodeAffinity:
# preferredDuringSchedulingIgnoredDuringExecution:
# - weight: 1
# preference:
# matchExpressions:
# - key: kubernetes.io/hostname
# operator: In
# values:
# - pi2
# - pi3
# - pi4