我正在开发Ruby on Rails应用程序.我是Ruby/Rails的新手.我使用Ruby 2.2.0和Rails 4.2.当我运行如下命令时:
rails g migration SomeMigrationName
Run Code Online (Sandbox Code Playgroud)
它失败了
Cannot allocate memory - fork(2) (Errno::ENOMEM)
Run Code Online (Sandbox Code Playgroud)
我在2014年中期使用Macbook Pro和OS X 10.10以及Vagrant/Virtualbox来运行用于Rails开发的虚拟机(Ubuntu 14.04).
这是我的Vagrant文件:
Vagrant.configure(2) do |config|
config.vm.box = "ubuntu/trusty64"
config.vm.network "forwarded_port", guest: 3000, host: 3000
config.vm.synced_folder "dev", "/home/vagrant/dev"
config.vm.synced_folder "opt", "/opt"
config.vm.provider "virtualbox" do |vb|
vb.memory = "512"
end
end
Run Code Online (Sandbox Code Playgroud)
我已经读过,当RAM超出限制时会发生这样的错误,但我使用相同的配置(Vagrant文件)用于运行多个Python/Tornado应用程序,MongoDB和Redis的另一个开发环境,它一切正常.
我是否需要增加vb.memory值或者它是一个Ruby错误?