feat: Add Palworld as a game server

This commit is contained in:
SeanOMik 2024-01-26 23:49:45 -05:00
parent 3d6d366dd9
commit 0c1237a361
Signed by: SeanOMik
GPG Key ID: FEC9E2FC15235964
6 changed files with 177 additions and 5 deletions

View File

@ -3,4 +3,5 @@ kind: Kustomization
resources:
- ./namespace.yaml
- ./network_policy.yaml
- ./factorio
#- ./factorio
- ./palworld

View File

@ -12,7 +12,6 @@ spec:
- namespaceSelector:
matchLabels:
name: "game-servers"
# - podSelector: {}
# Allow traefik pods
- namespaceSelector:
@ -23,3 +22,17 @@ spec:
- podSelector:
matchLabels:
needsGameServers: "yes"
egress:
- to:
- ipBlock:
cidr: 192.168.87.0/24 # server lan
ports:
# palworld
- protocol: UDP
port: 8211
- protocol: UDP
port: 38211
- protocol: UDP
port: 25575
- protocol: UDP
port: 32575

View File

@ -0,0 +1,84 @@
apiVersion: helm.toolkit.fluxcd.io/v2beta2
kind: HelmRelease
metadata:
name: palworld
namespace: game-servers
spec:
interval: 5m
chart:
spec:
chart: app-template
version: 1.3.x
sourceRef:
kind: HelmRepository
name: bjws-charts
namespace: flux-system
values:
image:
repository: ghcr.io/jammsen/docker-palworld-dedicated-server
tag: 1ea15dc
env:
TZ: America/New_York
COMMUNITY_SERVER: false
# Game settings
IS_MULTIPLAY: true
DIFFICULTY: Difficult
NIGHTTIME_SPEEDRATE: 0.8 # shorter nights
SERVER_NAME: ThePalFuckers
SERVER_DESCRIPTION: A private Palworld dedi server running on a dedi server
COOP_PLAYER_MAX_NUM: 6 # 4 is default
RCON_ENABLED: true
RCON_PORT: 25575
envFrom:
- secretRef:
name: palworld-server-secret
service:
main:
type: NodePort
# annotations:
# metallb.universe.tf/allow-shared-ip: "main-ip-192.168.87.10"
# metallb.universe.tf/loadBalancerIPs: 192.168.87.10
ports:
http:
enabled: false
game:
enabled: true
primary: true
port: &game_port 8211
nodePort: 38211
protocol: UDP
rcon:
enabled: true
primary: true
port: 25575
nodePort: 32575
protocol: TCP
ingress:
main:
enabled: true
annotations:
traefik.ingress.kubernetes.io/router.entrypoints: factorio
hosts:
- host: "pal.${SECRET_NEW_DOMAIN}"
paths:
- path: /
pathType: Prefix
service:
port: *game_port
persistence:
data:
enabled: true
type: hostPath
hostPath: /mnt/MainPool/Kubernetes/game-servers/palworld
mountPath: /palworld

View File

@ -0,0 +1,5 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- ./server-pass.sops.yaml
- ./helm-release.yaml

View File

@ -0,0 +1,70 @@
apiVersion: v1
kind: Secret
metadata:
name: palworld-server-secret
data:
SERVER_PASSWORD: ENC[AES256_GCM,data:hmgj4tzEFH4Q3HZa,iv:1iQrKKeKC+FlPUmhSrrwlJvPCHK8rtEcHeCJtkwdpos=,tag:/TPAzdUsYbEP04JCOlogZw==,type:str]
sops:
kms: []
gcp_kms: []
azure_kv: []
hc_vault: []
age: []
lastmodified: "2024-01-27T04:33:48Z"
mac: ENC[AES256_GCM,data:n36Uh2qW0+TIMoSAEDUpbKUmr+dju0Iu7TcZr9uh01WeWrF2pKpfs13kpOay84GyDcsz+EgBYWHoR5SqgRVVWtt82yI+GP5FMo1JNhQ9gdwvqAAlIj9gb6ZkzXm8K9IdKGwvsZciapJNMMQamgYsm/PInRQL++/uq0CqcByJLy4=,iv:m62/FUmrr9Z+4La0TLXC3Mz9RkbqoGYfq3uOqsVu1pk=,tag:IDBoF2PzYGzygD/AJLvo2A==,type:str]
pgp:
- created_at: "2024-01-27T04:33:48Z"
enc: |-
-----BEGIN PGP MESSAGE-----
hQIMAyqlIeyoxYovAQ/9GWC4lYqJ+dlITYSESAGVrlWJ5qajTUoDtpIOtVfm5H5U
GAuQouQjferazQN6aBwtFLgCTN/IfOITOGrPuIm9rAzTyMdAF+lpt+lQ/9tnllgS
m+90cVx/KsrU+qWYkUZqB8Zelz2IMXZdbNtqfiSgTiZRv11pLqILFasjYQMoGajC
j99X4ytAf/lcDuRphKL5OLpBAkxduZHX9XzJKX/1SjQlGHhnrXYlYmH+5qAU83Kk
F0TT6fPtuQC+xCpk706nAGBKJV1qkebf9wgGw1Qpv87ZnrYYv1j9slOPJnkkHocq
wq/IKU/SeRUyWO1Plh/u+rq70lhvuQirR57qfV060HOiZBop5iGeRcno3eiOok7F
Qf4+FtkRGlSnxPzOKdCwmVdzpRa4g+NC5Y+hEWma5lFRq7qJ/aLMOhvNNjlo9wVX
pWfruPP25FckVCViGLOOfQs85rLdle+T/krwPXEZSdNCyUkb4rUFALpEBNUY4VRs
56pFml1EgGmDTUkJHtjF55gjKqVeFrJRjHRfOyQgmr9QTeZ7IQMFUPcPbhpYF46o
TI38aTFzNipQnnaT1fO3c6BDBOfm1F5gsaczagMjsBUmmobRSd89HN151g+10CNb
7MW/m+MppXxqKEZNqc2Aab303uuxygfFrMVBm//jqRaZXcmwM8J0wIExf7XgbaaF
AgwDXjg0p2IN1X8BEADHAv0TKr7ZR5209ABeaNsHTsnVzxPghgWQPxveeedZOUGo
WRa0SJVx76TTgGZ2xSnm1xBEHuU68yqtyDfBI2L/mOMp/6d/KIa96aH7LaWL9tip
6knWBBKt0VZVW5o731gBE6Nr3K9pPVsXOrHTjL8JsQld+84dLpkkL4WcryajPJCA
VXjf/CzXhbRK7vrqSiyuZbIZL99YGPusCgGzdTF0Qj7D9ZjMUg73AbqTNkrsvgIn
7nIuoLpktP9IsbS8Q0oMsWYdi/vBvMbcDdU2rERFf0sfmZqrPbllLLW9HvHtwOse
Xz6DZoF9eft9kbSpO9BdYM3/dWfY6Jsvs/bW5C87IXgdF90nqqQ4yhqJroL+1IvK
KazkT4Uq4WNPfVMTkHmZEiS5H4Ak1P4S40kbRsZZWiOqrfx/qVhKvgd5r87/DBPq
HWtkI9tWL5T59NbbA+YJCDfbdHqRpN0gxBewfhHwpH7tMhRdGCZ4ISgm9yNnr0Nk
MSAYT1aMb9mdAHDU6QYCK6CO8z96fuMyqe3B9Ga0UBPPJB/OEQFWJsgFfBJurYKg
xbboPeQ+XWhDgJFV4yDAooolPG+CDLrfTHWMwVFPHqKyf6zN7G+69Bfyqnk0M21U
XWDrw0LU/2lrZh8AxwhDS1Zpz/KJ15Y+EweW6HKtH3Rb2Dhmznv5G7Czr9C1ddRo
AQkCEJAZgZ/NkuwMTLk+Np5QFi2bmuexCHNFhUoEy/ojJtPo6Ck5F8O6GmAWSD9w
S/Yk/tWkEVKxw+vl6gDybGwq+p+udhciU5dHkmbdpxOeVrA2PsQI1nUDqLrd9gCG
wigodoObUTc=
=x08X
-----END PGP MESSAGE-----
fp: BD1AAF9D8170F4BEE437365FF6F0933799CFEBCD
- created_at: "2024-01-27T04:33:48Z"
enc: |-
-----BEGIN PGP MESSAGE-----
hQIMAy5t8IMoPu4VARAAsxfnIPUWatZhWCEQNVWGa1+SsZqbLHXbJiF0kqw+2Uix
lnpa5mIs+L8gFDb0wzS15PsO9IU81YR5LJ7t4M0M6WA/sRHVREzkn6nozIqX0zaZ
qgqiMyhNss4kvKoJTGHvl0F49HUjCJn5PB0dynG0YjdphOnFZs5BrtNfnlYjqZvf
2+ncbWAlPs/fcmB4TQs/Xvug19zxz9VDbmMfxmU26kNiNF45D4fgb+qJDEPB2TdB
CkftMUz1YDuLSi9icLNo2UhxAS8+JX5z1NkL7KOajEsueJIMWlFwt7IWMcx/7I51
qQquNvlNmaSoap49Ca/pA/X7K34uzrSQjslOz1H6lrbNJSVVCmkYzDbt4XrmnocR
Y7fO6Co2qKbVqZwmGKsBqUlH9NRDXkWTEjS25+igAItPeJRFR1nHXp/ZYu6HUh4g
tjF6V43KLn/1mssbeS7xkNRM3BfU67LyeeVUGWU79CFfTJSakwkTr1VW2HrwBrsU
C1m7BMDXpAlwdEooa/JfVNAdzzjE2B/o0Hlzbu9HfPC7alT06ExkUvl1tRgeZIwy
pfySkno2pvl2yxTzyBKDNAg/++PDk0xHfHwf15YOeowQZfspncJYPAplT45GWmoL
0E1WAY6oXmdlqjzCeNIkirB7fOtk1hGvC41UP+fKxtW3oqorn29ODCF0rxS+BG/U
aAEJAhD4aWEYAsC3g0Lb9mmcFNgmDAPKJdqeSgf1vh4Hd4NnM8Z/LUPQP5IZZma4
dw/Dv3kbDLOIgEacnil3VXgIv4ECSSR7tZcC1ouaAHVALzVdh+/tSE53Io5IqEnV
D00W0y+1grgp
=AzxP
-----END PGP MESSAGE-----
fp: 687802D4DFD8AA82EA55666CF7DADAC782D7663D
encrypted_regex: ^(data|stringData)$
version: 3.8.1

View File

@ -10,6 +10,5 @@ resources:
- ./irc
- ./monitoring
- ./default
#- ./game-servers
- ./game-servers
- ./dev
#- ./harbor