Files
Brain/DEPLOY.md
MingNian b0fce840a3 首次提交:脑晴测 H5 项目
包含前端源码、预构建产物(dist/)、零依赖 Node.js 服务器(server.mjs)、
Cloudflare Worker 版本(worker/)、部署文档(DEPLOY.md)和交接文档。

技术总监可直接 clone 后运行 node server.mjs 启动,无需安装 React 或 build。
DEEPSEEK_API_KEY 通过环境变量注入,未纳入仓库。
2026-07-28 10:24:47 +08:00

3.1 KiB
Raw Blame History

脑晴测 H5 部署说明(自有服务器 + Node.js

更新时间2026-07-28

一、项目简介

  • 中文、免登录的认知能力测评 H5
  • 含四项游戏 + AI 生成报告DeepSeek
  • 前端 React 19 + Vite已构建为静态文件
  • 服务端是零依赖单文件 Node.jsserver.mjs

二、仓库结构

.
├── brain-h5/
│   ├── dist/client/        # 预构建前端(已含,无需再 build
│   ├── server.mjs          # Node.js 服务器入口(零依赖)
│   ├── src/                # 前端源码(仅二次开发时需要)
│   ├── worker/index.js     # Cloudflare Worker 版本(本方案不用)
│   └── ...
├── 交接文档.md
└── DEPLOY.md               # 本文件

三、部署步骤(自有服务器 + Node.js

1. 系统要求

  • Node.js v18 或更高(推荐 v20+
  • 任何能跑 Node.js 的操作系统Linux/Windows/macOS

不需要 npm install不需要 pnpm不需要 React 开发环境。

2. 克隆仓库

git clone <仓库地址>
cd Brain

3. 配置 API Key

DEEPSEEK_API_KEY 通过环境变量传入,不要写入任何文件

Linux/macOS:

export DEEPSEEK_API_KEY=sk-你的key

Windows PowerShell:

$env:DEEPSEEK_API_KEY = "sk-你的key"

或者用 systemd / pm2 / docker 等进程管理工具注入环境变量。

4. 启动服务

cd brain-h5
node server.mjs

默认监听 0.0.0.0:4173。可通过环境变量改:

PORT=8080 HOST=127.0.0.1 node server.mjs

5. 反向代理(推荐)

如果服务器有 Nginx建议反代到 Node 服务:

server {
    listen 80;
    server_name your.domain.com;

    location / {
        proxy_pass http://127.0.0.1:4173;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

6. 进程守护(生产环境)

推荐用 pm2:

npm install -g pm2
cd brain-h5
DEEPSEEK_API_KEY=sk-你的key pm2 start server.mjs --name brain-h5
pm2 save
pm2 startup

四、健康检查

部署完成后应能通过:

检查项 期望结果
GET / 返回 HTML200
GET /assets/index-*.js 返回 JS bundle200
POST /api/analyze(带 JSON body 返回 JSON 报告200
未配置 Key 时 POST /api/analyze 返回 503 {"error":"AI service is not configured..."}

五、关键安全约束

  • DEEPSEEK_API_KEY 必须通过环境变量传入,不要写入仓库、commit、或前端 bundle。
  • .env 文件已在 .gitignore 中排除,不会进入仓库。
  • Key 由项目负责人通过私密渠道单独发送。

六、本地开发(可选,技术总监无需操作)

如需修改源码并重新构建:

cd brain-h5
pnpm install      # 或 npm install
pnpm run dev      # 本地开发服务器
pnpm run build    # 重新构建到 dist/client/

七、联系人

  • 项目负责人MingNian
  • 项目根目录:D:\GMS project