This commit is contained in:
2025-10-04 15:22:47 +08:00
parent fd6cba2e34
commit 27715efe7c
9 changed files with 532 additions and 0 deletions

View File

@@ -0,0 +1,62 @@
# Kubernetes Deployment Configuration
apiVersion: apps/v1
kind: Deployment
metadata:
name: ${CONTAINER_IMAGE_NAME}
namespace: ${KUBERNETES_NAMESPACE}
labels:
app: ${CONTAINER_IMAGE_NAME}
spec:
replicas: 2
selector:
matchLabels:
app: ${CONTAINER_IMAGE_NAME}
template:
metadata:
labels:
app: ${CONTAINER_IMAGE_NAME}
spec:
imagePullSecrets:
- name: regcred
containers:
- name: ${CONTAINER_IMAGE_NAME}
image: ${FULL_IMAGE_NAME}
imagePullPolicy: Always
ports:
- name: http
containerPort: 8888
protocol: TCP
readinessProbe:
httpGet:
path: /api/v1/player/stats?auth=1
port: http
initialDelaySeconds: 5
periodSeconds: 10
timeoutSeconds: 5
failureThreshold: 3
livenessProbe:
httpGet:
path: /api/v1/player/stats?auth=1
port: http
initialDelaySeconds: 15
periodSeconds: 20
timeoutSeconds: 5
failureThreshold: 3
resources:
requests:
memory: "128Mi"
cpu: "200m"
limits:
memory: "256Mi"
cpu: "500m"
env:
- name: TZ
value: "UTC"

25
script/k8s/ingress.yaml Normal file
View File

@@ -0,0 +1,25 @@
# Kubernetes Ingress Configuration for Traefik
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: ${CONTAINER_IMAGE_NAME}
namespace: ${KUBERNETES_NAMESPACE}
annotations:
traefik.ingress.kubernetes.io/router.entrypoints: web
labels:
app: ${CONTAINER_IMAGE_NAME}
spec:
rules:
- host: ${KUBERNETES_INGRESS_HOST}
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: ${CONTAINER_IMAGE_NAME}
port:
number: 8888

View File

@@ -0,0 +1,7 @@
# Kubernetes Namespace Configuration
apiVersion: v1
kind: Namespace
metadata:
name: ${KUBERNETES_NAMESPACE}
labels:
name: ${KUBERNETES_NAMESPACE}

19
script/k8s/service.yaml Normal file
View File

@@ -0,0 +1,19 @@
# Kubernetes Service Configuration
apiVersion: v1
kind: Service
metadata:
name: ${CONTAINER_IMAGE_NAME}
namespace: ${KUBERNETES_NAMESPACE}
labels:
app: ${CONTAINER_IMAGE_NAME}
spec:
type: ClusterIP
selector:
app: ${CONTAINER_IMAGE_NAME}
ports:
- name: http
port: 8888
targetPort: http
protocol: TCP