生产箱上的Sqlite

时间:2010-10-14 16:19:16

标签: ruby-on-rails sqlite rubygems passenger production

我是否必须在我使用mysql作为rails应用程序的prod框上安装sqlite?我问的原因是,由于以下错误,我正在大喊大叫:

Could not find gem 'sqlite3-ruby (>= 0, runtime)' in any of the gem sources. (Bundler::GemNotFound)

我的gemfile有以下

group :development, :test do
    gem 'sqlite3-ruby', :require => 'sqlite3'
end

group :production do
    gem 'mysql'
end

如果我在开发部分注释掉条目,我的问题就会消失。我猜我也可以在prod服务器上安装sqlite,但由于某些原因我觉得不对。我假设在:development部分中有引用会阻止这种情况发生,但显然情况并非如此。

对此方案的最佳做法有何建议?如果你发现我做错了什么,我会特别感兴趣。

1 个答案:

答案 0 :(得分:2)

当您运行bundler install时,默认情况下,bundler会尝试为所有环境解析并安装Gems。

如果您想跳过特定环境,可以传递--without参数。

$ bundler install --without development
$ bundler install --without test development

另外,请记住使用--deployment标志。