【发布时间】:2017-09-18 21:59:28
【问题描述】:
您的 AWS Elastic Beanstalk 部署失败: - 间歇性 - 没有真正明显的原因
第 1 步:检查明显的日志
/var/log/eb-activity.log
Running npm install: /opt/elasticbeanstalk/node-install/node-v6.10.0-linux-x64/bin/npm
Setting npm config jobs to 1
npm config jobs set to 1
Running npm with --production flag
Failed to run npm install. Snapshot logs for more details.
Traceback (most recent call last):
File "/opt/elasticbeanstalk/containerfiles/ebnode.py", line 695, in <module>
main()
File "/opt/elasticbeanstalk/containerfiles/ebnode.py", line 677, in main
node_version_manager.run_npm_install(options.app_path)
File "/opt/elasticbeanstalk/containerfiles/ebnode.py", line 136, in run_npm_install
self.npm_install(bin_path, self.config_manager.get_container_config('app_staging_dir'))
File "/opt/elasticbeanstalk/containerfiles/ebnode.py", line 180, in npm_install
raise e
subprocess.CalledProcessError: Command '['/opt/elasticbeanstalk/node-install/node-v6.10.0-linux-x64/bin/npm', '--production', 'install']' returned non-zero exit status 1 (ElasticBeanstalk::ExternalInvocationError)
caused by: + /opt/elasticbeanstalk/containerfiles/ebnode.py --action npm-install
第 2 步:谷歌搜索相应的快照日志文件...
/var/log/nodejs/npm-debug.log
58089 verbose stack Error: spawn ENOMEM
58089 verbose stack at exports._errnoException (util.js:1022:11)
58089 verbose stack at ChildProcess.spawn (internal/child_process.js:313:11)
58089 verbose stack at exports.spawn (child_process.js:380:9)
58089 verbose stack at spawn (/opt/elasticbeanstalk/node-install/node-v6.10.0-linux-x64/lib/node_modules/npm/lib/utils/spawn.js:21:13)
58089 verbose stack at runCmd_ (/opt/elasticbeanstalk/node-install/node-v6.10.0-linux-x64/lib/node_modules/npm/lib/utils/lifecycle.js:247:14)
58089 verbose stack at /opt/elasticbeanstalk/node-install/node-v6.10.0-linux-x64/lib/node_modules/npm/lib/utils/lifecycle.js:211:7
58089 verbose stack at _combinedTickCallback (internal/process/next_tick.js:67:7)
58089 verbose stack at process._tickCallback (internal/process/next_tick.js:98:9)
58090 verbose cwd /tmp/deployment/application
58091 error Linux 4.4.44-39.55.amzn1.x86_64
58092 error argv "/opt/elasticbeanstalk/node-install/node-v6.10.0-linux-x64/bin/node" "/opt/elasticbeanstalk/node-install/node-v6.10.0-linux-x64/bin/npm" "--production" "install"
58093 error node v6.10.0
58094 error npm v3.10.10
58095 error code ENOMEM
58096 error errno ENOMEM
58097 error syscall spawn
58098 error spawn ENOMEM
第 3 步:显而易见的选项...
使用更大的实例就可以了...
-
不要修复,再试一次
再次部署就可以了...
克隆环境并运行...
重建环境,它就可以工作了......
觉得自己很肮脏和错误
【问题讨论】:
标签: node.js amazon-web-services out-of-memory amazon-elastic-beanstalk enomem