Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 始终从package.json本地安装npm_Node.js_Docker_Npm - Fatal编程技术网

Node.js 始终从package.json本地安装npm

Node.js 始终从package.json本地安装npm,node.js,docker,npm,Node.js,Docker,Npm,虽然我在docker容器中运行此设置,但我的项目文件位于/app中,并且/app/package.json存在 当我执行cd/app&&npm安装--production(作为root用户或非root用户)时,所有依赖项都安装在~/.npm文件夹中,而不是显示在/app/node\u模块中 我还尝试过执行npm安装--production--verbose--prefix/app,但是文件夹node\u modules仍然没有与app文件夹中的依赖项一起出现 当我查看错误日志时,几乎每个依赖项都

虽然我在docker容器中运行此设置,但我的项目文件位于
/app
中,并且
/app/package.json
存在

当我执行
cd/app&&npm安装--production
(作为root用户或非root用户)时,所有依赖项都安装在
~/.npm
文件夹中,而不是显示在
/app/node\u模块中

我还尝试过执行
npm安装--production--verbose--prefix/app
,但是文件夹
node\u modules
仍然没有与app文件夹中的依赖项一起出现

当我查看错误日志时,几乎每个依赖项都会看到这样的消息(例如:installing react)

如果我想以root用户身份运行,如何让npm始终将
package.json
中列出的所有依赖项安装在app目录的
node\u modules
文件夹中


使用npm@2.14.7, node@v4.2.3

Do
npm安装
。它应该安装在node_模块中

您可能想看看这个:遗憾的是,这种方法不起作用。如果我在docker脚本中运行
npm install react
,我会看到一个node\u modules文件夹,但运行
npm install
时,package.json react列出的位置不会创建node\u modules文件夹。在Amazon Linux上运行node时,我遇到了同样的奇怪问题。你找到答案了吗?我也试过。还是没有。作为澄清,我添加了
--production
,因为package.json中也有devdependency。但是,即使有一个干净的package.json,只有一个依赖项,我仍然无法将它安装到节点中。我认为出现这种情况的原因是,您一直在尝试以root用户身份安装。您应该检查如何在没有sudo的情况下安装软件包。这有点令人沮丧。我试着把它当作非根,同样的事情也发生了。我只是无法让它在同一个目录中安装任何东西尝试将它添加到.basrc文件
PATH=“$PATH:$HOME/.npm packages/bin”
npm verb tar unpack /root/.npm/base62/0.1.1/package.tgz
npm verb tar unpacking to /app/node_modules/react/node_modules/envify/node_modules/jstransform/node_modules/base62
npm verb gentlyRm don't care about contents; nuking /app/node_modules/react/node_modules/envify/node_modules/jstransform/node_modules/base62
npm verb gentlyRm don't care about contents; nuking /app/node_modules/react/node_modules/envify/node_modules/jstransform/node_modules/esprima-fb
npm verb tar unpack /root/.npm/source-map/0.1.31/package.tgz
npm verb tar unpacking to /app/node_modules/react/node_modules/envify/node_modules/jstransform/node_modules/source-map
npm verb gentlyRm don't care about contents; nuking /app/node_modules/react/node_modules/envify/node_modules/jstransform/node_modules/source-map
npm verb tar unpack /root/.npm/esprima-fb/13001.1001.0-dev-harmony-fb/package.tgz
npm verb tar unpacking to /app/node_modules/react/node_modules/envify/node_modules/jstransform/node_modules/esprima-fb
npm verb gentlyRm don't care about contents; nuking /app/node_modules/react/node_modules/envify/node_modules/jstransform/node_modules/esprima-fb