You need to enable JavaScript to run this app. npm7.18.1无--only=development参数如何仅安装devDependencies
优惠活动
大模型
产品
解决方案
定价
更多

npm7.18.1无--only=development参数如何仅安装devDependencies

npm 7+ 版本仅安装devDependencies的实现方案

npm从v7开始废弃了--only参数,替换为--omit和--include系列参数来控制依赖安装范围,对应你的多阶段Docker构建需求,可按以下方式实现:

1. 开发阶段仅安装devDependencies

执行以下命令即可跳过生产依赖、仅安装开发依赖:

npm install --include=dev --omit=prod

如果项目存在package-lock.json,推荐使用npm ci保证依赖版本完全一致,命令为:

npm ci --include=dev --omit=prod

2. 生产阶段仅安装生产依赖

执行以下命令跳过所有devDependencies,仅安装生产环境需要的依赖:

npm ci --omit=dev

多阶段Dockerfile参考示例

# 第一阶段:开发/构建阶段
FROM node:16-alpine AS builder
WORKDIR /app
COPY package*.json ./
# 仅安装开发依赖,用于后续的代码编译、打包等操作
RUN npm ci --include=dev --omit=prod
COPY . .
# 执行打包命令,比如前端项目的build
RUN npm run build

# 第二阶段:生产运行阶段
FROM node:16-alpine AS production
WORKDIR /app
COPY package*.json ./
# 仅安装生产依赖
RUN npm ci --omit=dev
# 从上一阶段拷贝打包后的产物
COPY --from=builder /app/dist ./dist

CMD ["npm", "run", "start"]

内容的提问来源于stack exchange,提问作者Élodie Petit

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.12 01:36:02