AWS Elastic Beanstalk Node.js npm 安装错误
Posted
技术标签:
【中文标题】AWS Elastic Beanstalk Node.js npm 安装错误【英文标题】:AWS Elastic Beanstalk Node.js npm install error 【发布时间】: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。
任何帮助都会很棒。谢谢!
【问题讨论】:
我也有类似的问题...如果我有什么解决办法,我会告诉你的。 【参考方案1】:我最终只是创建和部署了一个 Docker 容器来解决这个问题。部署到 EB 提供的环境过于不确定 - 依赖关系树没有正确创建。
【讨论】:
以上是关于AWS Elastic Beanstalk Node.js npm 安装错误的主要内容,如果未能解决你的问题,请参考以下文章
AWS Elastic Beanstalk CLI 安装错误