bundle无法在nginx / passenger中找到全局共享gem

时间:2014-09-29 14:17:49

标签: ruby-on-rails-4 nginx gem bundle passenger

乘客报告无法找到宝石json的错误。虽然可以找到其他宝石,因为它们是由bundle install安装的。但是,json是ruby 2.1.1的默认安装。

并且捆绑显示json已被删除。

$ bundle show json
The gem json has been deleted. It was installed at:
/home/canoe/.rbenv/versions/2.1.1/lib/ruby/gems/2.1.0/gems/json-1.8.1

但是宝石仍然可以在系统上找到它 $ gem list json
json(1.8.1)

json安装在这个位置/home/canoe/.rbenv/versions/2.1.1/lib/ruby/2.1.0/json.rb。

我在部署rails4.1应用程序时不使用cap,因此solution对我不起作用。

我不想将所有内容打包到某个地方,而是使用gemsets中当前安装的所有宝石。

那么,如何在nginx乘客中使用捆绑系统默认宝石?

1 个答案:

答案 0 :(得分:-1)

我遇到了同样的问题,但是在帖子后帮助了我:fusion passenger issue with json gem when running on nginx

也许你也在使用一些ruby版本控制工具。我正在使用RVM。 根据上述帖子中的评论。 passenger_ruby需要指向RVM包装器文件夹。

例如:

  

passenger_ruby /usr/local/rvm/wrappers/ruby-2.0.0-p481/ruby;