As of right now all DreamHost customers have a new option for hosting Ruby on Rails applications.
Awhile back I asked for a better way to host Rails applications on a shared server, and the answer has come in the form of Passenger (also known as mod_rails)! From now on, deploying a Rails application may very well be as simple as ‘Upload’. Passenger automatically detects the presence of a Ruby on Rails application and launches it for you in the background, leaving it running for the subsequent requests. It provides the dynamic process management that FastCGI provides but it’s ‘Rails-smart’ and (gasp!) actually works.
After I wrote my Ruby on Rails rants back in January, stirring up the pot and getting people talking about the deployment issues involved with Ruby on Rails applications, I was contacted by a few smart people who were all interested in helping work on the problem. The guys behind Passenger were among those people (the guy who came up with the also excellent Switchpipe was another), and they described their software concept to me via email. On ‘paper’ it sounded excellent but honestly I expected to never hear from them again. I didn’t think these random people with a graffiti logo would manage to get it finished and working.
I’m so glad to have been proven wrong!
The Phusion team contacted me with a working test version of Passenger a couple of months ago and since then DreamHost has been helping out with testing and ironing out lingering deployment issues. The Phusion team has been very helpful and responsive throughout the process and I think we will see a lot more great things from them in the future.
Now to the important part… how do you use Passenger on DreamHost?
Briefly, all you do is enable the Ruby on Rails Passenger (mod_rails) option for any existing or new web domain in the DreamHost web control panel. When you then point that domain’s web directory to the public directory of an existing Ruby on Rails application it will work automatically. For more detailed information, check out our Passenger wiki page.