28 mod_rails / Passenger Resources To Help You Deploy Rails Applications Faster
Passenger (often known as "mod_rails") is an Apache module developed by Phusion, a small Dutch IT consultancy, that makes it easy to deploy Rails applications on Apache-based stacks. Passenger follows on well from the popular "No True mod_ruby Is Damaging Ruby's Viability on the Web" discussion of January 2008 in that it mostly solves the Rails deployment issue (see SwitchPipe for an alternative that can deal with non-Rails frameworks).
Since its launch in April, Passenger has become quite popular and a lot of developers are already using it to rapidly deploy Rails sites. Even popular budget Web hosting company Dreamhost has got in on the action, and is offering cheap, Passenger-based Rails application hosting. The de-facto Ruby (and Rails) deployment system seems to change rapidly (remember Apache+FastCGI, then lighttpd+FastCGI, then Apache+Mongrel, then Nginx+Mongrel...?) and while Passenger may or may not be a de-facto standard in a few years' time, it's certainly becoming the standard for now, so jump on board!
To help with your leap on to the Passenger bandwagon, I've collected together some of the better resources and blog posts of recent weeks covering its use:
Official Passenger / mod_rails Site - The official site for the Apache module. Features testimonials, installation instructions, documentation, and information on how you can further support the project.
Passenger / mod_rails Source Repository - Passenger / mod_rails is an open-source project at heart, and the code is available on Github.
Passenger Users Guide - A very Apache-documentation-esque guide to using, configuring, and trouble shooting Passenger.
Ask Your Doctor About mod_rails - Geoffrey Grosenbach (of Peepcode fame) writes about Passenger from a user's point of view. He walks through rolling out Passenger on his own server in a bunch of easy steps. He also covers log rotation.
Using Passenger on OS X for Rails development - Manfred Stienstra quickly walks through what's involved in setting up Passenger on Mac OS X.
Configurating [sic] Passenger (mod_rails) on SliceHost with Ubuntu 7.10 - Ben Hughes covers the roll-out of Passenger, SQLite 3 and Rails on a SliceHost VM.
Ubuntu 8.04 Rails Server Using Passenger - Ron Valente covers the installation of Passenger on Ubuntu 8.04 (a.k.a. Hardy Heron). This is a very well put together guide, cut into nice bite size pieces with well formatted code examples.
Passenger Installation in Portuguese - Fabio Akita presents a Passenger installation guide in Portuguese.
Discussion & Benchmarks
mod_rails vs thin vs ebb vs mongrel - A comparison of four different Rails serving techniques. Ebb appears to have the edge.
Interview with Hongli Lai and Ninh Bui of Phusion - Fabio Akita interviews the two masterminds behind mod_rails.
Looking at mod_rails and FiveRuns Rails Instrumentation - Oliver of FiveRuns takes a look at mod_rails and examines its usage scenarios.
A few notes on using Passenger (mod_rails) with Mac OS X - A quick examination of mod_rails on OS X.
Miscellaneous Experiences Some People Have Had With Passenger - A roundup of various impressions and experiences people have had so far.
mod_rails vs Mongrel vs Thin - Benchmarks performed by Phusion themselves with three alternative deployment solutions.
Tools and Tips
mod_rails and Capistrano - Tom Copeland presents a simple Capistrano recipe for restarting mod_rails applications.
Using Capistrano with Passenger - A slightly deeper guide to using Capistrano to deploy mod_rails applications.
Installing Typo (blog engine) and mod_rails for multiple accounts - A walkthrough of creating and installing multiple instances of the Typo blogging engine using mod_rails.
Disclaimer: I don't use and haven't tried mod_rails yet, so any corrections to above comments are welcomed and encouraged.
This post is sponsored by KickStart Events — RubyOnRails Training at the EMCC (East Midlands Conference Centre), UK. High-quality hands-on workshops and courses for web application developers. Taught by experienced mentors using live coding sessions, slides and participatory discussion.