快速部署
这里列出两种部署方式的最短路径和完成标准。需要详细步骤时,进入对应部署主线。
先准备三样东西
不管走哪条路,都要先有:
- 一个能收验证邮件的邮箱;
- 一个独立的高强度管理员密码(12 位以上,别用学校名或手机号);
- 学校信息:校名、省份、年级和班级列表、学期开始日期。
顺手准备一个能保存密码的地方——初始化最后会生成一个只显示一次的恢复密钥。
路线 A:Vercel 云端
最短路径
Fork 仓库 —— 打开 PikaNova/Novora,点右上角 Fork。
建数据库 —— 在 Neon 新建项目,Region 选 AWS Asia Pacific 1 (Singapore),复制 Pooled connection string。
导入 Vercel —— 在 Vercel 导入刚 Fork 的仓库,填两个环境变量:
textDATABASE_URL = Neon 的 Pooled 连接串 ADMIN_PASSWORD = 你的管理员密码点 Deploy,等状态变成 Ready。
加 Deploy Hook —— 部署成功后在 Vercel Settings → Git → Deploy Hooks 创建
main分支的钩子,把完整 URL 填进环境变量VERCEL_DEPLOY_HOOK_URL,然后 Redeploy 一次。绑域名 —— Settings → Domains 添加
exam.example.com,按页面给的记录在你的域名服务商加 CNAME。初始化 —— 打开域名,点「开始初始化」,用
admin+ADMIN_PASSWORD登录,按向导走完并保存恢复密钥。
怎么算成功
- [ ] Vercel 最新部署是 Ready
- [ ] 域名状态是 Valid Configuration,HTTPS 正常
- [ ] 首页能打开,
/api/time返回 JSON - [ ] 用新密码能登录后台
- [ ] 恢复密钥已经存到安全位置
详细步骤和常见报错见 Vercel 云端部署主线。
路线 B:本地 / 内网
最短路径
需要一台能长期开机的电脑或服务器,装好 Docker。
bash
sudo mkdir -p /opt/novora && cd /opt/novora
sudo git clone https://github.com/PikaNova/Novora.git .
sudo cp .env.example .env
sudo nano .env # 填入 ADMIN_PASSWORD
sudo docker compose up -d --build启动后打开 http://服务器局域网IP:3000,用 admin + ADMIN_PASSWORD 登录,按向导完成初始化。
怎么算成功
- [ ]
sudo docker compose ps里app和db都是 running - [ ] 本机
curl http://127.0.0.1:3000/api/time返回 JSON - [ ] 内网其他设备也能打开
http://服务器IP:3000(打不开先看防火墙) - [ ] 用新密码能登录后台
- [ ] 重启容器后数据还在(验证持久化)
详细步骤和常见问题:本地部署总览|Docker Compose 部署。
下一步
部署只是开始。接着看部署后的检查清单,完成初始化、设备绑定和一次考试流程验收。