-
Notifications
You must be signed in to change notification settings - Fork 0
/
pz-deployment.yaml
102 lines (99 loc) · 2.07 KB
/
pz-deployment.yaml
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
---
apiVersion: v1
kind: Namespace
metadata:
creationTimestamp: null
name: project-zomboid
spec: {}
status: {}
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
namespace: project-zomboid
name: pz-data
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 10Gi
storageClassName: linode-block-storage-retain
---
apiVersion: v1
kind: Service
metadata:
namespace: project-zomboid
name: pz-server
labels:
app: pz-server
spec:
type: NodePort
ports:
- name: pz-connection
port: 16261
protocol: UDP
targetPort: 16261
nodePort: 32000
- name: pz-connection-direct
port: 16262
protocol: UDP
targetPort: 16262
nodePort: 32001
selector:
app: pz-server
---
apiVersion: apps/v1
kind: Deployment
metadata:
namespace: project-zomboid
name: pz-server
labels:
app: pz-server
spec:
replicas: 1
selector:
matchLabels:
app: pz-server
template:
metadata:
labels:
app: pz-server
spec:
initContainers:
- name: take-data-dir-ownership
image: alpine:3
command:
- chown
- -R
- 1000:1000
- /pz-data
volumeMounts:
- name: pz-data
mountPath: /pz-data/
- name: generate-random-admin-password
image: alpine:3
command: ['sh', '-c', 'echo $RANDOM | md5sum | head -c 20 > /pz-data/pass.txt']
volumeMounts:
- name: pz-data
mountPath: /pz-data/
containers:
- name: pz-server
image: ghcr.io/antisoft-club/project-zomboid-container@sha256:9697bc11ae83bac9fce0fdbdeda8c117d076f8d192d9c2945ed9e090a6154bd5
args: ["-adminpassword", "$(cat /pz-data/pass.txt)"]
ports:
- containerPort: 16261
protocol: UDP
- containerPort: 16262
protocol: UDP
resources:
requests:
memory: "2G"
cpu: "250m"
volumeMounts:
- name: pz-data
mountPath: /pz-data/
volumes:
- name: pz-data
persistentVolumeClaim:
claimName: pz-data