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 导致新镜像启动即被拒绝
This commit is contained in:
Sakurasan committed 2026-10-30 02:20:57 +08:00
1 parent 854d0f5d8c
commit d357134e97
2 files changed
+7

No files matched your search

+5
View File
@@ -16,6 +16,11 @@ WORKDIR /src
# --ignore-scripts:依赖 postinstall(esbuild/vue-demi)非必需且被 pnpm 拦截,
# esbuild 走 optionalDependencies 自带平台二进制;跳过脚本更安全、可复现。
RUN corepack enable && corepack prepare pnpm@11.21.0 --activate
# pnpm 11 默认拒绝发布不足 1 天的依赖(供应链策略):锁文件里 tailwind v4 的
# @csstools 传递依赖偶尔踩中,且 pnpm build 的 run 前依赖自检会隐式再跑一次
# install,命令行参数覆盖不到。pnpm 11 该配置只认 pnpm-workspace.yaml(.npmrc/ENV 均不读);
# 镜像构建有 frozen-lockfile(版本钉死)+ --ignore-scripts(不执行依赖脚本)两道闸,可放开。
RUN printf 'minimumReleaseAge: 0\n' > pnpm-workspace.yaml
COPY web/package.json web/pnpm-lock.yaml ./
RUN pnpm install --frozen-lockfile --ignore-scripts
COPY web/ ./