diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..921c5e9 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +# Temporary directories used for troubleshooting +nethack-repo/ +nethack-server-docker/ diff --git a/GEMINI.md b/GEMINI.md new file mode 100644 index 0000000..892b967 --- /dev/null +++ b/GEMINI.md @@ -0,0 +1,47 @@ +# GEMINI.md - NetHack Multiplayer Server su Kubernetes + +namespace: nethack + +# Deployment del server NetHack +deployment: + name: nethack-server + replicas: 1 + labels: + app: nethack + container: + image: matsuu/nethack-server:latest + name: nethack + ports: + - containerPort: 4000 + env: + - name: DGL_PORT + value: "4000" + - name: DGL_HOST + value: "0.0.0.0" + volumeMounts: + - name: nethack-data + mountPath: /opt/nethack/data + + volumes: + - name: nethack-data + persistentVolumeClaim: + claimName: nethack-pvc + +# PersistentVolumeClaim per salvataggi e configurazioni +pvc: + name: nethack-pvc + accessModes: [ "ReadWriteOnce" ] + resources: + requests: + storage: 1Gi + +# Service ClusterIP interno +service: + name: nethack-service + type: LoadBalancer + ports: + - port: 4000 + targetPort: 4000 + protocol: TCP + selector: + app: nethack diff --git a/k8s/deployment.yaml b/k8s/deployment.yaml new file mode 100644 index 0000000..a5c7cc9 --- /dev/null +++ b/k8s/deployment.yaml @@ -0,0 +1,34 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: nethack-server + namespace: nethack + labels: + app: nethack +spec: + replicas: 1 + selector: + matchLabels: + app: nethack + template: + metadata: + labels: + app: nethack + spec: + containers: + - name: nethack + image: matsuu/nethack-server:latest + ports: + - containerPort: 23 + env: + - name: DGL_PORT + value: "4000" + - name: DGL_HOST + value: "0.0.0.0" + volumeMounts: + - name: nethack-data + mountPath: /opt/nethack/data + volumes: + - name: nethack-data + persistentVolumeClaim: + claimName: nethack-pvc diff --git a/k8s/pvc.yaml b/k8s/pvc.yaml new file mode 100644 index 0000000..a7296f1 --- /dev/null +++ b/k8s/pvc.yaml @@ -0,0 +1,11 @@ +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: nethack-pvc + namespace: nethack +spec: + accessModes: + - ReadWriteOnce + resources: + requests: + storage: 1Gi diff --git a/k8s/service.yaml b/k8s/service.yaml new file mode 100644 index 0000000..c2a5c6a --- /dev/null +++ b/k8s/service.yaml @@ -0,0 +1,13 @@ +apiVersion: v1 +kind: Service +metadata: + name: nethack-service + namespace: nethack +spec: + type: LoadBalancer + selector: + app: nethack + ports: + - protocol: TCP + port: 4000 + targetPort: 23