Spaces:
Running
Running
| # Hugging Face Spaces Docker 部署文件 | |
| # 使用官方Node.js运行时作为基础镜像 | |
| FROM node:20-alpine | |
| # 设置标签 | |
| LABEL maintainer="AIClient2API Team" | |
| LABEL description="Docker image for AIClient2API server on Hugging Face Spaces" | |
| # 安装必要的系统工具 | |
| RUN apk add --no-cache tar git | |
| # 设置工作目录 | |
| WORKDIR /app | |
| # 复制package.json和package-lock.json | |
| COPY package*.json ./ | |
| # 安装依赖 | |
| RUN npm install --omit=dev | |
| # 复制源代码 | |
| COPY . . | |
| # 创建配置和日志目录,并设置权限 | |
| RUN mkdir -p /app/configs /app/logs && \ | |
| chown -R node:node /app | |
| # 切换到 node 用户 (已存在于 node:alpine 镜像中) | |
| USER node | |
| # HF Spaces 默认端口是 7860 | |
| ENV SERVER_PORT=7860 | |
| ENV HOST=0.0.0.0 | |
| # 暴露端口 | |
| EXPOSE 7860 | |
| # 健康检查 | |
| HEALTHCHECK --interval=30s --timeout=3s --start-period=10s --retries=3 \ | |
| CMD node healthcheck.js || exit 1 | |
| # 启动命令 | |
| CMD ["node", "src/core/master.js"] | |