FROM node:22-slim # 1. 安装 socat 用于本地回环端口转发 RUN apt-get update && apt-get install -y --no-install-recommends socat \ && rm -rf /var/lib/apt/lists/* # 2. 全局安装 DSH RUN npm install -g @deepseek-ai/dsh # 3. 切换至 node 用户 USER node ENV HOME=/home/node \ PATH=/home/node/.local/bin:$PATH \ NODE_OPTIONS="--max-old-space-size=8192" WORKDIR /home/node/app # HF Spaces 暴露 7860 端口 EXPOSE 7860 # 启动流程: # 1) 后台启动 socat,将 0.0.0.0:7860 的请求转发给 127.0.0.1:3080 # 2) 启动 dsh web(使用默认 127.0.0.1:3080) CMD ["sh", "-c", "socat TCP-LISTEN:7860,fork,reuseaddr TCP:127.0.0.1:3080 & exec dsh web --no-open"]