# 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"]