Reputation: 1497
The Ideal
Using rvm, it would be awesome to be able to have multiple Rubies on one webserver, and through some sort of server configuration, be able to assign Ruby versions to different Rails/Sinatra/etc apps on a per-project basis.
I am aware, from rvm's documentation, that Passenger only works with one Ruby at a time. :(
The Compromise
Failing that, it would be nice to at least be able to concoct a way to be able to assign projects to a Ruby 1.8 or a Ruby 1.9 interpreter. I've read that using Nginx as a reverse proxy allows running Apache and Nginx on the same box. Would it then be possible to have Apache+Passenger using one Ruby, and Nginx+Passenger using a different one? Maybe use something other than Passenger with Nginx?
Am I Barking Up the Wrong Tree?
Am I missing a good solution to this issue? Am I walking into a nightmare configuration situation? Is what I want even viable, or is it necessary to run another box to run a separate Ruby version?
Upvotes: 7
Views: 2045
Reputation: 11303
If you're using Mac OS X, you may want to check out POW!, which can handle multiple rubies. There's a linux alternative called hoof, which isn't as developed but is getting close.
Upvotes: 0
Reputation: 11858
check this post: Phusion Passenger & running multiple Ruby versions from official Phusion blog. It's solve the problem by use Passenger Standalone as reverse proxy.
Upvotes: 2
Reputation: 2001
The compromise is possible. You can it this a variety of ways but probably the easiest is a reverse proxy combined with as many chrooted ruby+webserver+rails installs as you find convenient.
Upvotes: 0
Reputation: 25984
You could use Thin or Unicorn with Nginx. You could than write a god script or some other startup script to set the ruby version per project (or simply start Thin/Unicorn manually).
Upvotes: 1
Reputation: 2684
What about keeping all your projects (or at least those on one server) on the same ruby version? Be it using an old version or upgrading old projects?
I think, this way you have the fewest problems.
Upvotes: 0