apiVersion: apps/v1 kind: Deployment metadata: name: vllm namespace: llm labels: app: vllm spec: replicas: 1 strategy: type: Recreate selector: matchLabels: app: vllm template: metadata: labels: app: vllm spec: nodeName: prod102 enableServiceLinks: false hostAliases: - ip: 10.0.1.47 hostnames: ["host.docker.internal"] containers: - name: vllm image: docker.m.daocloud.io/vllm/vllm-openai:latest imagePullPolicy: IfNotPresent command: ["vllm", "serve"] args: - /model - --trust-remote-code - --dtype - bfloat16 - --tensor-parallel-size - "1" - --enable-auto-tool-choice - --tool-call-parser - qwen3_xml - --reasoning-parser - qwen3 - --max-model-len - "65536" - --gpu-memory-utilization - "0.70" - --max-num-seqs - "8" - --served-model-name - qwen3.6-27b - --enable-prefix-caching - --host - 0.0.0.0 - --port - "8000" env: - name: HF_HUB_OFFLINE value: "1" - name: NVIDIA_VISIBLE_DEVICES value: all - name: NVIDIA_DRIVER_CAPABILITIES value: all ports: - containerPort: 8000 hostPort: 8000 volumeMounts: - name: model mountPath: /model - name: dshm mountPath: /dev/shm volumes: - name: model hostPath: path: /models/Qwen3.6-27B type: Directory - name: dshm emptyDir: medium: Memory sizeLimit: 8Gi --- apiVersion: v1 kind: Service metadata: name: vllm namespace: llm spec: selector: app: vllm ports: - name: p8000 port: 8000 targetPort: 8000 --- apiVersion: apps/v1 kind: Deployment metadata: name: xinference namespace: llm labels: app: xinference spec: replicas: 1 strategy: type: Recreate selector: matchLabels: app: xinference template: metadata: labels: app: xinference spec: nodeName: prod102 enableServiceLinks: false containers: - name: xinference image: xprobe/xinference:latest imagePullPolicy: IfNotPresent command: ["xinference-local", "-H", "0.0.0.0", "--log-level", "info"] env: - name: XINFERENCE_HOME value: /data - name: XINFERENCE_MODEL_SRC value: modelscope - name: NVIDIA_VISIBLE_DEVICES value: all - name: NVIDIA_DRIVER_CAPABILITIES value: all ports: - containerPort: 9997 hostPort: 9997 volumeMounts: - name: data mountPath: /data volumes: - name: data hostPath: path: /usr/cluster/dify/xinference type: DirectoryOrCreate --- apiVersion: v1 kind: Service metadata: name: xinference namespace: llm spec: selector: app: xinference ports: - name: p9997 port: 9997 targetPort: 9997 --- apiVersion: apps/v1 kind: Deployment metadata: name: new-api namespace: llm labels: app: new-api spec: replicas: 1 strategy: type: Recreate selector: matchLabels: app: new-api template: metadata: labels: app: new-api spec: nodeName: prod102 enableServiceLinks: false containers: - name: new-api image: calciumion/new-api:latest imagePullPolicy: IfNotPresent command: ["/new-api"] args: ["--log-dir", "/app/logs"] ports: - containerPort: 3000 hostPort: 3000 volumeMounts: - name: data mountPath: /data - name: logs mountPath: /app/logs volumes: - name: data hostPath: path: /opt/new-api/data type: DirectoryOrCreate - name: logs hostPath: path: /opt/new-api/logs type: DirectoryOrCreate --- apiVersion: v1 kind: Service metadata: name: new-api namespace: llm spec: selector: app: new-api ports: - name: p3000 port: 3000 targetPort: 3000 --- apiVersion: apps/v1 kind: Deployment metadata: name: nav namespace: llm labels: app: nav spec: replicas: 1 strategy: type: Recreate selector: matchLabels: app: nav template: metadata: labels: app: nav spec: nodeName: prod102 containers: - name: nav image: nginx:latest imagePullPolicy: IfNotPresent command: ["/docker-entrypoint.sh"] args: ["nginx", "-g", "daemon off;"] ports: - containerPort: 80 hostPort: 8090 volumeMounts: - name: html mountPath: /usr/share/nginx/html volumes: - name: html hostPath: path: /usr/cluster/llm-nav type: DirectoryOrCreate --- apiVersion: v1 kind: Service metadata: name: nav namespace: llm spec: selector: app: nav ports: - name: p80 port: 80 targetPort: 80