Downgrade to J17 + sample kubernetes deployment

This commit is contained in:
Radek Goláň jr. 2025-01-09 17:18:03 +01:00
parent 44e054397b
commit 299e20cd73
Signed by: shield
GPG Key ID: D86423BFC31F3591
7 changed files with 115 additions and 11 deletions

7
.vscode/settings.json vendored Normal file
View File

@ -0,0 +1,7 @@
{
"cSpell.words": [
"bluemap",
"mrpack",
"voicechat"
]
}

View File

@ -1,12 +1,12 @@
FROM eclipse-temurin:22
COPY --from=golang:1.22-bookworm /usr/local/go/ /usr/local/go/
ENV PATH="/root/go/bin:/usr/local/go/bin:${PATH}"
RUN go install github.com/nothub/mrpack-install@v0.16.10
VOLUME /server
COPY entrypoint.sh /entrypoint.sh
FROM eclipse-temurin:17
COPY --from=golang:1.22-bookworm /usr/local/go/ /usr/local/go/
ENV PATH="/root/go/bin:/usr/local/go/bin:${PATH}"
RUN go install github.com/nothub/mrpack-install@v0.16.10
VOLUME /server
COPY entrypoint.sh /entrypoint.sh
ENTRYPOINT [ "/entrypoint.sh" ]

View File

@ -0,0 +1,24 @@
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: bluemap-web
labels:
name: bluemap-web
annotations:
cert-manager.io/cluster-issuer: letsencrypt
spec:
rules:
- host: bluemap.create.shielddaggerhosted.com
http:
paths:
- pathType: Prefix
path: "/"
backend:
service:
name: bluemap-web
port:
number: 8100
tls:
- hosts:
- bluemap.create.shielddaggerhosted.com
secretName: bluemap-tls

View File

@ -0,0 +1,10 @@
apiVersion: v1
kind: Service
metadata:
name: bluemap-web
spec:
selector:
app: minecraft-server
ports:
- port: 8100
targetPort: 8100

View File

@ -0,0 +1,5 @@
resources:
- mc-service.yml
- bluemap-service.yml
- bluemap-ingress.yml
- statefulset.yml

15
kube/base/mc-service.yml Normal file
View File

@ -0,0 +1,15 @@
apiVersion: v1
kind: Service
metadata:
name: minecraft-server
spec:
type: LoadBalancer
selector:
app: minecraft-server
ports:
- port: 25565
targetPort: 25565
name: minecraft
- port: 24454
targetPort: 24454
name: voicechat

43
kube/base/statefulset.yml Normal file
View File

@ -0,0 +1,43 @@
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: minecraft-server
spec:
selector:
matchLabels:
app: minecraft-server
serviceName: minecraft-server
replicas: 1
template:
metadata:
labels:
app: minecraft-server
spec:
containers:
- name: minecraft-server
image: dev.shielddagger.com/shield/mrpack-docker
args:
- "pBlMznzu"
ports:
- containerPort: 25565
name: minecraft
- containerPort: 8100
name: bluemap
- containerPort: 24454
name: voicechat
volumeMounts:
- name: server-data
mountPath: /server
resources:
requests:
memory: 4Gi
limits:
memory: 4Gi
volumeClaimTemplates:
- metadata:
name: server-data
spec:
accessModes: [ "ReadWriteOnce" ]
resources:
requests:
storage: 100Gi