Deploying Ruby on Rails is easy

Taking your Rails application live has never been easier. Thanks to the rise of Passenger aka mod_rails, launching is now almost as easy as developing.

Passenger aka mod_rails

Passenger The easiest deployment setup for Rails is Phusion Passenger aka mod_rails. It’s a module for nginx and Apache that automatically manages the back end. Just setup, launch, and enjoy.

Proxy setups

Mongrel If you need more fine-grained control over your deployment setup, the common option is to use a front-end server like nginx and Apache combined with a proxy relay like HAProxy to cluster of Unicorns. That’s how Basecamp and a lot of other high-end deployments run.

JRuby on Rails

Duke JRuby brings Rails to the Java Virtual Machine. This means that you can deploy Rails applications on app servers like Glassfish. You can use Warbler to package your Rails application as a standard WAR. Great for slipping into the enterprise.

Automate with Capistrano

capistrano Capistrano brings deployment automation to Rails whether you’re working with a single server or on a cluster of dozens. It was extracted from the Basecamp tool chain (like Rails) by core alumni Jamis Buck.

Hosting

While Rails hosting is now common place, there’s a handful of dedicated Rails hosting companies that have been around for a long time and supporting the community: Heroku, Rails Machine, Brightbox, and Engine Yard. If you’re just looking for a VPS, we recommend Rackspace (who gracefully donated slices for us to run Rails infrastructure on) or Linode.