相关疑难解决方法(0)

有没有办法让“npm ci”安装 devDependencies 或“npm install”不更新 package-lock.json?

我正在尝试为新开发人员在他们的本地开发环境中安装我们的代码库整理文档。我想给他们以下命令:

  • 根据 package-lock.json 中的版本安装 devDependencies 和依赖项
  • 不更新 package-lock.json

“npm ci”几乎完全符合我的要求,但似乎没有安装 devDependencies。“npm install”确实会安装 devDependencies,但它有时会修改 package-lock.json。

我可以想象一些像“npm install && git checkout package-lock.json”这样的问题,但我觉得必须有一种更惯用的方式来表达“给我一个干净安装这个项目的开发依赖项?”

npm npm-install npm-ci

24
推荐指数
2
解决办法
1万
查看次数

为什么在使用 npm install 时,package-lock.json 会导致 docker 容器构建失败?

网上有很多人用不同的方式问同样的问题,但没有明确的答案。任何人都可以理解到足以解释为什么docker buildpackage-lock.json应用程序中存在文件时会失败,而当文件不存在时会成功运行吗?貌似跟npm有关,但是不清楚。

每个人都说删除package-lock.json,但它存在是有原因的。

注意: npm install在我的本地机器上工作正常,只是在 docker 容器中失败。

如果我有这个 Dockerfile:

# First Stage: Builder
FROM node:13.12.0-alpine AS build
WORKDIR /app
COPY package*.json ./
RUN npm install
COPY . .
RUN npm run build
Run Code Online (Sandbox Code Playgroud)

并运行这个:

docker build -t container-tag ./
Run Code Online (Sandbox Code Playgroud)

我明白了:

npm WARN tar ENOENT: no such file or directory, open '/app/node_modules/.staging/eventsource-c2615740/example/index.html'
npm WARN tar ENOENT: no such file or directory, open '/app/node_modules/.staging/eventsource-c2615740/example/sse-client.js'
npm WARN tar ENOENT: no such file or directory, open …
Run Code Online (Sandbox Code Playgroud)

node.js npm docker package-lock.json

5
推荐指数
1
解决办法
3183
查看次数

标签 统计

npm ×2

docker ×1

node.js ×1

npm-ci ×1

npm-install ×1

package-lock.json ×1