From 36116e0973c9ac6fb73569dfc5982eeb9b242ae2 Mon Sep 17 00:00:00 2001 From: "n72595987@gmail.com" Date: Sat, 29 Nov 2025 17:57:25 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=89=8D=E7=AB=AF=E6=9E=84?= =?UTF-8?q?=E5=BB=BA=EF=BC=9A=E6=AD=A3=E7=A1=AE=E9=85=8D=E7=BD=AE=20BladeX?= =?UTF-8?q?=20=E7=A7=81=E6=9C=89=20npm=20registry?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 问题: - Dockerfile 中 npm install 时未复制 .npmrc 文件 - 使用 --registry 参数覆盖了 .npmrc 中的私有 registry 配置 - 导致无法下载 @saber scope 的私有包,报 E401 认证错误 解决方案: - Dockerfile: 在 npm install 前复制 .npmrc 文件 - Dockerfile: 移除 --registry 参数,使用 .npmrc 中的配置 - .drone.yml: 同样移除 --registry 参数 现在 npm 会正确使用: - @saber 包 -> https://center.javablade.com (私有 registry) - 其他包 -> npm 默认源 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- .drone.yml | 2 +- Dockerfile | 7 ++++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/.drone.yml b/.drone.yml index 76ca87e..47622d7 100644 --- a/.drone.yml +++ b/.drone.yml @@ -15,7 +15,7 @@ steps: image: node:18-alpine commands: - echo "开始安装 npm 依赖..." - - npm install --registry=https://registry.npmmirror.com + - npm install - echo "✅ 依赖安装完成" # 步骤2:构建生产版本 diff --git a/Dockerfile b/Dockerfile index eea30bc..c996938 100644 --- a/Dockerfile +++ b/Dockerfile @@ -3,11 +3,12 @@ FROM node:18-alpine AS builder WORKDIR /build -# 复制 package 文件 +# 复制 package 文件和 npm 配置 COPY package*.json ./ +COPY .npmrc ./ -# 安装依赖(使用国内镜像加速) -RUN npm install --registry=https://registry.npmmirror.com +# 安装依赖(.npmrc 中已配置私有 registry 和认证) +RUN npm install # 复制源码 COPY . .