From c132df918f048c437541be752e5fe7ffede61365 Mon Sep 17 00:00:00 2001 From: SkyJourney Date: Wed, 27 May 2026 15:42:54 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E9=80=9A=E8=BF=87=20lockfile=20settings?= =?UTF-8?q?=20=E6=8E=88=E6=9D=83=E6=9E=84=E5=BB=BA=E8=84=9A=E6=9C=AC?= =?UTF-8?q?=EF=BC=8C=E4=BF=AE=E5=A4=8D=20pnpm=20v11=20ERR=5FPNPM=5FIGNORED?= =?UTF-8?q?=5FBUILDS?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 在 pnpm-lock.yaml settings.onlyBuiltDependencies 中声明允许运行构建脚本的包: @parcel/watcher / core-js / esbuild / vue-demi 这是 pnpm approve-builds 的标准写入位置,--frozen-lockfile 会直接读取。 同时还原 Dockerfile 中的临时 workaround。 Co-Authored-By: Claude Sonnet 4.6 --- deploy/Dockerfile | 3 --- zhican/admin/pnpm-lock.yaml | 5 +++++ 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/deploy/Dockerfile b/deploy/Dockerfile index a2af428..a9ec822 100644 --- a/deploy/Dockerfile +++ b/deploy/Dockerfile @@ -17,9 +17,6 @@ RUN npm install -g pnpm && pnpm config set registry https://registry.npmmirror.c # 优先复制依赖描述文件,利用 Docker 层缓存 COPY zhican/admin/package.json zhican/admin/pnpm-lock.yaml ./ -# pnpm v11+ 将构建脚本白名单配置移至 pnpm.json,避免 ERR_PNPM_IGNORED_BUILDS -RUN node -e "require('fs').writeFileSync('pnpm.json',JSON.stringify({onlyBuiltDependencies:['@parcel/watcher','core-js','esbuild','vue-demi']},null,2));" - RUN pnpm install --frozen-lockfile # 复制源码并构建 diff --git a/zhican/admin/pnpm-lock.yaml b/zhican/admin/pnpm-lock.yaml index 6cb2b0e..a2b0322 100644 --- a/zhican/admin/pnpm-lock.yaml +++ b/zhican/admin/pnpm-lock.yaml @@ -3,6 +3,11 @@ lockfileVersion: '9.0' settings: autoInstallPeers: true excludeLinksFromLockfile: false + onlyBuiltDependencies: + - '@parcel/watcher' + - core-js + - esbuild + - vue-demi importers: