我正在使用Capistrano在暂存环境中部署Rails应用程序。 cap deploy:update
工作正常,但Passenger不断报告此情况
Could not find mysql2-0.3.11 in any of the sources (Bundler::GemNotFound)
我确实执行了bundle install
,bundle list
和gem list
都显示已安装的gem和需要rails console
下的数据库访问的操作正常工作,所有这些都在服务器上。在我的机器上一切都很好。
我正在使用RVM,Ruby 1.9.3,Rails 3.2.8,这是deploy.rb的相关部分:
set :rvm_ruby_string, ENV['GEM_HOME'].gsub(/.*\//,"") # Read from local system
require "rvm/capistrano" # Load RVM's capistrano plugin.
这是一个乘客问题,我是否对Capistrano做错了,还是宝石版本有问题?
答案 0 :(得分:0)
好吧,在我尝试了一切后,我发现答案很简单:
bundle install --deployment
(在服务器上)
这会在我的应用的vendor
文件夹中安装所有必需的宝石,现在一切正常
修改强> 或者更好,在deploy.rb中:
require "bundler/capistrano"