【发布时间】:2016-03-11 21:10:21
【问题描述】:
在应用程序部署期间,npm install 无法安装非常特殊的依赖项:
npm ERR! enoent ENOENT: no such file or directory, chmod '/tmp/deployment/application/node_modules/babel-core/node_modules/regexpu/node_modules/regjsparser/node_modules/jsesc/bin/jsesc'
我能够通过 ssh 进入托管我的 Node 应用程序的特定 EC2 实例并通过以下命令运行 npm install 来发现上述错误:
sudo /opt/elasticbeanstalk/containerfiles/ebnode.py --action npm-install 2
然后出现这个一般性故障:
Failed to run npm install. Snapshot logs for more details.
No environment variable EB_EVENT_FILE found. Writing message to stderr.
Msg: Failed to run npm install. Snapshot logs for more details.
奇怪的是,我之前能够成功部署一次,并且在之前的部署中使用了完全相同的配置。我唯一的命令是 .ebextensions/ 中的 npm start。
在我的 package.json 中,我将所有开发依赖项更改为依赖项,因为 webpack 是在预启动期间构建的。
顺便说一句,这一切都在本地构建和运行。我还在 EB 上使用 Node 4.2.1 和 npm 2.14.7。
任何帮助都会很棒。谢谢!
【问题讨论】:
-
我也有类似的问题...如果我有什么解决办法,我会告诉你的。
标签: node.js amazon-web-services amazon-ec2 amazon-elastic-beanstalk