瞎扯淡 部署项目的时候因为耗光内存然后 bundle install 不能一次成功>_<

oa414 · March 13, 2014 · Last by umhan35 replied at March 14, 2014 · 3129 hits

最新部署了两个小东西

一个是 Sinatra 的项目,部署到阿里云。 一个是 Rails4 的项目,部署到 DigitalOcean。

VPS 都是 512MB 内存的最低配置。

两个在部署的时候都碰到了一个之前没遇上的错误,无论是手工运行还是通过 Capistrano 部署的时候都会报类似以下的错误:

Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
DEBUG [f444127f]    
DEBUG [f444127f]        /home/web/.rvm/rubies/ruby-2.1.1/bin/ruby extconf.rb 
DEBUG [f444127f]    Cannot allocate memory - /home/web/.rvm/rubies/ruby-2.1.1/bin/ruby extconf.rb  2>&1

额,解决也很简单,自己在 ssh 上手动先用 gem install XXX -v XX 装好 Gem,再进行 bundle install 就成功了。。

不知消耗内存的是 Ruby 还是编译本地扩展。。。

有遇到同样的问题。正常来说安装 gem 不会出现,但在安装例如 nokogiri 的需要本地编译的 gem 时就会爆内存。

DigitalOcean 的应用多大流量?512M 够用?

加内存……

遇到同样的问题。我会停了 mysql 再 bundle

bundle cache,然后把 gem 文件 commit 后会快很多

You need to Sign in before reply, if you don't have an account, please Sign up first.