捆绑安装在生产服务器上失败

时间:2013-07-25 02:03:16

标签: ruby-on-rails bundler

我正在尝试将rails应用程序投入生产。我已将其上传到服务器,并且没有任何问题。当我尝试运行:rake db:migrate RAILS_ENV=production时,出现以下错误:

Could not find rake-10.0.4 in any of the sources
Run `bundle install` to install missing gems.

因此,我运行bundle install并收到以下错误:

Gem::Exception: Cannot load gem at [/usr/local/lib/ruby/gems/1.9.1/cache/rake-10.0.4.gem] in /home/root/myapp
An error occurred while installing rake (10.0.4), and Bundler cannot continue.
Make sure that `gem install rake -v '10.0.4'` succeeds before bundling.

从这里开始,我跑gem install rake -v '10.0.4' --no-rdoc --no-ri,成功了:

然而,bundle install失败并出现同样的错误。我该怎么做才能解决这个问题?

4 个答案:

答案 0 :(得分:2)

感谢所有帮助人员!

我在运行bundle package后重新部署,然后在服务器上运行bundle install --deployment,现在它可以运行了。

看起来我/ bundle需要更明确地查找在哪里查找gem文件:)

答案 1 :(得分:0)

Bundler将尝试运行gemfile中的Rake。您需要运行bundle exec rake db:migrate RAILS_ENV=production

答案 2 :(得分:0)

显然你的安装有问题。我建议你从头开始重新做,如果你想更好地使用rbenv

请检查此回答Install Ruby on Rails on Ubuntu 12.04 LTS

答案 3 :(得分:0)

我的建议请你试试。如果您不是root用户并且运行此rake commmad可能会出错。为什么不尝试以root用户身份登录,然后放置并导航到您的代码。 home / root / myapp到var / yourfolder / yourapp然后。检查你使用ruby的版本或ruby -v它应该是1.9或更高,并且对于你正在使用的rails版本的rails来说是相同的。