feat(mudcraft): add mudcraft-core deployment, service, secrets, ingress; fix voicechat domain to play.mudcraft.org
This commit is contained in:
@@ -15,7 +15,7 @@ data:
|
|||||||
tcp_rate_limit=16
|
tcp_rate_limit=16
|
||||||
keep_alive=1000
|
keep_alive=1000
|
||||||
enable_groups=true
|
enable_groups=true
|
||||||
voice_host=mudcraft.nook.family:24454
|
voice_host=play.mudcraft.org:24454
|
||||||
allow_recording=true
|
allow_recording=true
|
||||||
spectator_interaction=false
|
spectator_interaction=false
|
||||||
spectator_player_possession=false
|
spectator_player_possession=false
|
||||||
|
|||||||
@@ -0,0 +1,64 @@
|
|||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: mudcraft-core
|
||||||
|
namespace: mudcraft
|
||||||
|
labels:
|
||||||
|
app: mudcraft-core
|
||||||
|
spec:
|
||||||
|
replicas: 1
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app: mudcraft-core
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: mudcraft-core
|
||||||
|
spec:
|
||||||
|
containers:
|
||||||
|
- name: mudcraft-core
|
||||||
|
image: registry.neuralplatform.ai/mudcraft/core:latest
|
||||||
|
imagePullPolicy: Always
|
||||||
|
ports:
|
||||||
|
- containerPort: 8080
|
||||||
|
env:
|
||||||
|
- name: DB_URL
|
||||||
|
value: "jdbc:postgresql://postgres-postgresql.platform.svc.cluster.local:5432/mudcraft"
|
||||||
|
- name: DB_USER
|
||||||
|
value: "mudcraft"
|
||||||
|
- name: DB_PASSWORD
|
||||||
|
valueFrom:
|
||||||
|
secretKeyRef:
|
||||||
|
name: mudcraft-core-secrets
|
||||||
|
key: db-password
|
||||||
|
- name: JWT_SECRET
|
||||||
|
valueFrom:
|
||||||
|
secretKeyRef:
|
||||||
|
name: mudcraft-core-secrets
|
||||||
|
key: jwt-secret
|
||||||
|
- name: PLUGIN_API_KEY
|
||||||
|
valueFrom:
|
||||||
|
secretKeyRef:
|
||||||
|
name: mudcraft-core-secrets
|
||||||
|
key: plugin-api-key
|
||||||
|
readinessProbe:
|
||||||
|
httpGet:
|
||||||
|
path: /actuator/health
|
||||||
|
port: 8080
|
||||||
|
initialDelaySeconds: 30
|
||||||
|
periodSeconds: 10
|
||||||
|
failureThreshold: 5
|
||||||
|
livenessProbe:
|
||||||
|
httpGet:
|
||||||
|
path: /actuator/health
|
||||||
|
port: 8080
|
||||||
|
initialDelaySeconds: 60
|
||||||
|
periodSeconds: 30
|
||||||
|
failureThreshold: 3
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
memory: 512Mi
|
||||||
|
cpu: 250m
|
||||||
|
limits:
|
||||||
|
memory: 1Gi
|
||||||
|
cpu: 1000m
|
||||||
@@ -0,0 +1,26 @@
|
|||||||
|
apiVersion: external-secrets.io/v1beta1
|
||||||
|
kind: ExternalSecret
|
||||||
|
metadata:
|
||||||
|
name: mudcraft-core-secrets
|
||||||
|
namespace: mudcraft
|
||||||
|
spec:
|
||||||
|
refreshInterval: 1h
|
||||||
|
secretStoreRef:
|
||||||
|
name: vault
|
||||||
|
kind: ClusterSecretStore
|
||||||
|
target:
|
||||||
|
name: mudcraft-core-secrets
|
||||||
|
creationPolicy: Owner
|
||||||
|
data:
|
||||||
|
- secretKey: db-password
|
||||||
|
remoteRef:
|
||||||
|
key: secret/data/legion-db
|
||||||
|
property: mudcraft_db_password
|
||||||
|
- secretKey: jwt-secret
|
||||||
|
remoteRef:
|
||||||
|
key: secret/data/mudcraft
|
||||||
|
property: jwt_secret
|
||||||
|
- secretKey: plugin-api-key
|
||||||
|
remoteRef:
|
||||||
|
key: secret/data/mudcraft
|
||||||
|
property: plugin_api_key
|
||||||
@@ -0,0 +1,30 @@
|
|||||||
|
---
|
||||||
|
apiVersion: cert-manager.io/v1
|
||||||
|
kind: Certificate
|
||||||
|
metadata:
|
||||||
|
name: mudcraft-core-tls
|
||||||
|
namespace: mudcraft
|
||||||
|
spec:
|
||||||
|
secretName: mudcraft-core-tls
|
||||||
|
issuerRef:
|
||||||
|
name: letsencrypt-prod
|
||||||
|
kind: ClusterIssuer
|
||||||
|
dnsNames:
|
||||||
|
- api.mudcraft.org
|
||||||
|
---
|
||||||
|
apiVersion: traefik.io/v1alpha1
|
||||||
|
kind: IngressRoute
|
||||||
|
metadata:
|
||||||
|
name: mudcraft-core
|
||||||
|
namespace: mudcraft
|
||||||
|
spec:
|
||||||
|
entryPoints:
|
||||||
|
- websecure
|
||||||
|
routes:
|
||||||
|
- match: Host(`api.mudcraft.org`)
|
||||||
|
kind: Rule
|
||||||
|
services:
|
||||||
|
- name: mudcraft-core
|
||||||
|
port: 8080
|
||||||
|
tls:
|
||||||
|
secretName: mudcraft-core-tls
|
||||||
@@ -0,0 +1,12 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: mudcraft-core
|
||||||
|
namespace: mudcraft
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
app: mudcraft-core
|
||||||
|
ports:
|
||||||
|
- port: 8080
|
||||||
|
targetPort: 8080
|
||||||
|
type: ClusterIP
|
||||||
Reference in New Issue
Block a user