Elastic beanstalk [Rails] 部署问题 - 无法分配内存

Posted

技术标签:

【中文标题】Elastic beanstalk [Rails] 部署问题 - 无法分配内存【英文标题】:Elastic beanstalk[Rails] deploy issue - Cannot allocate memory 【发布时间】:2015-07-17 05:51:09 【问题描述】:

我在部署到 Elastic beanstalk 时遇到以下错误。这是一个在 Puma 上运行 Rails 4.1.9 和 Ruby 2.1.4 的 ruby​​ 应用程序。

stacktrace如下:

Errno::ENOMEM: Cannot allocate memory - node
(in /var/app/ondeck/app/assets/javascripts/my_javascript.js)

我的 javascript 文件非常基本,看起来像这样

//= require jquery
//= require jquery_ujs
//= require ../../../vendor/assets/components/bootstrap/dist/js/bootstrap.min
//= require ../../../vendor/assets/components/thirdpartylib.js

... and then basic functions

不确定为什么会失败。我没有更改 javascript 文件或供应商资产中的任何内容。

任何关于如何解决的想法将不胜感激。

【问题讨论】:

这看起来服务器没有足够的内存来编译资产。你可以尝试在本地编译它们吗? 另外,我认为你可以简单地做//= require components/bootstrap/dist/js/bootstrap.min 感谢@IsmaelAbreu 的回复。经过进一步调查,我的问题似乎与我实际上并不需要的供应商/资产/组件/* 中的大量资产有关。我已经解决了这个问题。 哦。凉爽的!不要忘记将其添加为答案,因为它可以在将来帮助其他人。 遇到同样的错误,删除一些资产没有帮助。正如这个答案中所解释的那样,添加交换为我做了这件事 - ***.com/questions/11013755/… 【参考方案1】:

通过删除大量不需要或使用的资产解决了这个问题,例如我有整个引导项目源和一些 3rd 方库项目源树和相应的文件,而不仅仅是 src 文件我正在使用的。

【讨论】:

以上是关于Elastic beanstalk [Rails] 部署问题 - 无法分配内存的主要内容,如果未能解决你的问题,请参考以下文章

AWS Elastic Beanstalk——rails 部署问题

Rails 4 Elastic Beanstalk 部署错误

Rails 4.1 Elastic Beanstalk 找不到图片网址

使用 AWS Elastic Beanstalk 部署 Rails ActionCable

Rails Elastic Beanstalk nginx 301 重定向

`/home/webapp` 不是目录 - Elastic Beanstalk (RAILS)