我正在尝试将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
失败并出现同样的错误。我该怎么做才能解决这个问题?
答案 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
答案 3 :(得分:0)
我的建议请你试试。如果您不是root用户并且运行此rake commmad可能会出错。为什么不尝试以root用户身份登录,然后放置并导航到您的代码。 home / root / myapp到var / yourfolder / yourapp然后。检查你使用ruby的版本或ruby -v它应该是1.9或更高,并且对于你正在使用的rails版本的rails来说是相同的。