apiVersion: apps/v1 kind: Deployment metadata: name: teamspeak spec: replicas: 1 selector: matchLabels: name: teamspeak template: metadata: labels: name: teamspeak spec: affinity: nodeAffinity: requiredDuringSchedulingIgnoredDuringExecution: nodeSelectorTerms: - matchExpressions: - key: arch operator: In values: - x86 containers: - name: teamspeak image: teamspeak:latest ports: - containerPort: 9987 protocol: UDP name: swarm - containerPort: 10011 protocol: TCP name: serverquery - containerPort: 30033 protocol: TCP name: filetransfer env: - name: TS3SERVER_DB_PLUGIN value: "ts3db_mariadb" - name: TS3SERVER_DB_SQLCREATEPATH value: "create_mariadb" - name: TS3SERVER_DB_HOST value: "mariadb.mariadb" - name: TS3SERVER_DB_USER value: "teamspeak" - name: TS3SERVER_DB_NAME value: "teamspeak" - name: TS3SERVER_DB_WAITUNTILREADY value: "30" - name: TS3SERVER_LICENSE value: "accept" - name: TS3SERVER_DB_PASSWORD valueFrom: secretKeyRef: name: teamspeak key: mariadb-password volumeMounts: - name: pv mountPath: /var/ts3server volumes: - name: teamspeak secret: secretName: teamspeak - name: pv persistentVolumeClaim: claimName: teamspeak