Sakurasan
|
d357134e97
|
fix: 修 Docker 构建失败,compose 补上生产必需的 OT_JWT_COOKIE_SECURE
- pnpm 11 默认拒绝发布不足 1 天的依赖(供应链策略),锁文件里
tailwind v4 的 @csstools 传递依赖会踩中,导致镜像构建失败且
pnpm build 的 run 前自检(隐式 install)还会再次踩中。pnpm 11
该配置只认 pnpm-workspace.yaml(.npmrc/ENV 均不生效),在
web-builder 阶段写入 minimumReleaseAge: 0;frozen-lockfile +
--ignore-scripts 两道闸仍在,放开无风险
- config.validate 的生产 fail-fast 要求 refresh cookie 必须 Secure,
compose 漏配 OT_JWT_COOKIE_SECURE 导致新镜像启动即被拒绝
|
2026-10-30 02:20:57 +08:00 |
|
 SakurasanandClaude
|
8495694671
|
构建: 入口脚本 chown 数据目录后降权运行
绑定挂载/命名卷被 docker 以 root 自动创建时,容器非 root 用户
写不进 db(SQLITE_CANTOPEN)。改为 entrypoint 以 root 启动,
chown 数据目录到 OT_UID:OT_GID(默认 1000:1000)后 su-exec 降权,
compose 不再需要 user: 覆盖。
Co-Authored-By: Claude <noreply@anthropic.com>
|
2026-08-18 22:25:43 +08:00 |
|
 SakurasanandClaude
|
ea7f023228
|
构建: 多架构 Dockerfile + 构建脚本
- Dockerfile 三阶段:前端固定在 BUILDPLATFORM 编译一次(平台无关产物),
Go 后端按 TARGETARCH 交叉编译,两种架构共用同一份 web/dist
- 前端用 pnpm --ignore-scripts(pnpm≥10 拦截 esbuild/vue-demi postinstall,
esbuild 走 optionalDependencies 自带二进制),运行镜像非 root + /app/data 卷
- scripts/build-image.sh:--local 本地单架构加载;默认多架构 amd64+arm64 推送
Co-Authored-By: Claude <noreply@anthropic.com>
|
2026-08-18 13:16:54 +08:00 |
|