Commit Graph
3 Commits
Author SHA1 Message Date
xuyueandClaude Opus 5.5 aadb2c9e93 Bun 升级到 1.4.4(Docker 镜像和 CI)
CI/CD / test (push) Canceled after 0s
CI/CD / deploy (push) Canceled after 0s
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 18:27:17 +08:00
xuyueandClaude Opus 5.5 d6bcd11fb4 修复部署:数据卷属主是 root,平台用户写不进数据库
CI/CD / test (push) Canceled after 0s
CI/CD / deploy (push) Canceled after 0s
Docker 新建数据卷时属主是 root,而平台用普通用户(APP_UID)运行,SQLite 打不开数据库,
新容器反复退出。compose 加一个启动前只运行一次的 init-data(root 把 /data 交给平台用户),
Dockerfile 里也预先建好属于平台用户的 /data。

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-22 19:50:00 +08:00
xuyueandClaude Opus 5.5 697f31e9ce 部署:bubblewrap 沙箱、编译检查、访问口令、Docker Compose
- 学生程序每次运行放进 bubblewrap:断网,只读挂载系统文件、运行时和自己的工程目录,
  看不到其他进程和服务器环境变量;限制堆内存 128 MB、CPU 时间 120 秒、运行 60 分钟,
  nice 10,全站同时运行上限 150;启动时自检沙箱,不可用时拒绝运行
- 编译检查(SIM001):网络、反射、启动进程、调用本机代码、加载程序集、dynamic 给出中文报错
- 访问口令:cookie 保存口令哈希,按真实 IP 限制输错次数;前端口令页
- 服务端配置集中到 config.ts,可用环境变量覆盖;Bun 直接提供打包好的网页
- Dockerfile(多阶段,服务端打包成单文件)、compose.yaml(Caddy 只收 HTTP,接入 NPM 的
  npm_proxy 网络)、deploy/deploy.sh(本机构建后经 ssh 传到服务器)和部署说明
- 测试:沙箱隔离、内存上限、CPU 时间上限、编译检查

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-22 15:40:09 +08:00