FROM node:20-slim AS builder WORKDIR /app # 安装 git 以便拉取源码(如果需要) RUN apt-get update && apt-get install -y git && rm -rf /var/lib/apt/lists/* # 克隆官方项目仓库 RUN git clone https://github.com/tashfeenahmed/freellmapi.git . # 安装依赖并编译前端前端控制台(Vite)与后端服务器 RUN npm install RUN npm run build FROM node:20-slim AS runner WORKDIR /app # 拷贝编译后的产物 COPY --from=builder /app ./ # 暴露 Hugging Face 要求的唯一公网端口 EXPOSE 7860 # 核心变量注入:强制让后端服务去监听 7860 端口 ENV PORT=7860 ENV NODE_ENV=production # 启动代理服务器 CMD ["npm", "run", "start"]