From d32c6380966c4350e0a05ef273798e24c676bcda Mon Sep 17 00:00:00 2001 From: ouyangxq <775153912@qq.com> Date: Thu, 30 Jul 2026 21:40:19 +0800 Subject: [PATCH] ci: avoid external Dockerfile frontend pull --- Dockerfile | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/Dockerfile b/Dockerfile index 2b061dbc..6e641000 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,20 +1,18 @@ -# syntax=docker/dockerfile:1.7 - # 构建 Vue 静态文件 FROM node:22-alpine AS build WORKDIR /app -# Corepack 随 Node 一起提供,用它固定使用项目的 pnpm。 -ENV PNPM_HOME=/pnpm -ENV PATH=$PNPM_HOME:$PATH +# Corepack 与 pnpm 依赖均通过 npmmirror 下载,避免构建时访问 npm 官方源过慢。 +ENV COREPACK_NPM_REGISTRY=https://registry.npmmirror.com +ENV NPM_CONFIG_REGISTRY=https://registry.npmmirror.com RUN corepack enable COPY package.json pnpm-lock.yaml ./ COPY shared/package.json ./shared/package.json -# pnpm store 使用 BuildKit 持久缓存;依赖未变化时不会重新下载。 -RUN --mount=type=cache,id=admin-web-pnpm-store,target=/pnpm/store \ - pnpm config set store-dir /pnpm/store && \ +# package.json 和 lock 文件未变化时,这一层会由 Docker 自动复用, +# 因此不会重复下载 pnpm 依赖。 +RUN pnpm config set registry https://registry.npmmirror.com && \ pnpm install --frozen-lockfile COPY . .