【发布时间】:2017-12-01 17:10:18
【问题描述】:
【问题讨论】:
标签: npm package-lock.json
【问题讨论】:
标签: npm package-lock.json
npm 5.7 引入了npm ci 子命令:
使用
npm install和npm ci的主要区别是:
- 项目必须有一个现有的
package-lock.json或npm-shrinkwrap.json。- 如果包锁中的依赖项与
package.json中的依赖项不匹配,npm ci将退出并报错,而不是更新包锁。npm ci一次只能安装整个项目:无法使用此命令添加单个依赖项。- 如果
node_modules已经存在,它将在npm ci开始安装之前自动删除。- 它永远不会写信给
package.json或任何包锁:安装基本上是冻结的。
【讨论】:
这就是我在dockerfile 中的做法
RUN npm install --pure-lockfile
它应该可以完美运行。
【讨论】:
--pure-lockfile 的文档。我相信这个标志被忽略了。