Deploying Rails Applications
There's always been something of a discontinuity when it comes to creating a Rails site. The Rails framework makes writing the applications themselves a lot easier than any other common framework. The sensible defaults and conventions combine to create code that somehow just works. You race through the development phase, giddy with the speed with which you implement each feature.

Then you reach the part where you have to deploy your application, and you find yourself with two black eyes, brought on by the rapid deceleration that takes place. Suddenly you've gone from the hyper-productive world of Rails coding to the traditional world of web application deployment. We're back talking about web server configuration, monitoring daemons, clustering, and so on. Then, to make it even more interesting, the Rails world seems to switch preferences for server-side technologies almost monthly: Apache, lighttpd, mongrel, and now nginx all compete for your attention.
That's why I was really keen to get a great book on deploying Rails applications out the door. Ezra Zygmuntowicz and Bruce Tate have obliged. Deploying Rails Applications is now out in beta. As a founder of Engine Yard, Ezra is one of the most experienced people in the world when it comes to Rails deployment. As the author of nine books (including From Java to Ruby, Bruce brings a wonderful writing style to the book.
They're not finished yet, and I understand that they'll be updating some of the existing content (for example to cover the new Capistrano 2). If you're deploying a Rails application, I recommend checking it out.




What, no JRuby on Rails?
Posted by: Charles Oliver Nutter | August 21, 2007 at 12:56 PM
I'm sure its a great book, but that fact that you need one rather than a sheet of paper shows that there is a long way to go with the server side tooling.
Posted by: Neil Wilson | August 21, 2007 at 12:56 PM
I agree with Charles. a chaptor on JRuby and hosting Rails on Tomcat (or Glassfish / JBoss) would be great.
Posted by: Markus Jais | August 22, 2007 at 12:54 AM
@charles, if they haven't done it themselves it will be hard for them to write a good description of it. Perhaps the JRuby Camp can extract all their know-how and write a chapter.
Posted by: Dr Nic | August 22, 2007 at 03:50 AM
@Neil: Couldn't disagree more. The beauty of the open source world is there's more than one right answer.
Posted by: Christian Romney | August 23, 2007 at 03:47 PM
@Christian Romney: You mean, 'the curse of the open source world', right? ;)
Posted by: Joachim Bengtsson | August 24, 2007 at 05:10 PM
What no RubyWorks either? ;) We're at 1.0, public announcement coming soon.
Posted by: Chad Wathington | August 29, 2007 at 12:24 AM
Ok but when will it come out? I'm waiting for it!
Posted by: skyblaze | September 06, 2007 at 04:59 PM
Skyblaze: it's out in beta now...
Posted by: Dave Thomas | September 06, 2007 at 05:04 PM
i know it is in beta but i want the stable version :)
Posted by: skyblaze | September 07, 2007 at 05:08 AM
It's 1.0. We launched it yesterday w/ commercial support. Let us know what you think. http://rubyworks.rubyforge.org/.
Posted by: Chad Wathington | September 08, 2007 at 01:06 PM
This book sucks. No specific info on setting up Apache/SSL/Mongrel/Subversion. The author can bite me.
Posted by: Shagymoe | September 10, 2007 at 09:35 AM
Explain why in detail so! Do you read the beta copy?
Posted by: skyblaze | September 10, 2007 at 04:26 PM
Shagymoe:
The book is still in beta,which means we can make as many changes as we want. I'm sure the authors would welcome your constructive comments (although invitations to feast on your body parts will probably not get the message across :). Why don't you e-mail me specifics offline, and I'll pass them on.
Thanks
Dave Thomas
Posted by: Dave Thomas | September 10, 2007 at 05:09 PM
I ask myself how can it be possible that a book on how to set up apache/mongrel/subversion doesn't speak about that :)
Posted by: skyblaze | September 11, 2007 at 02:50 AM
Whoa there! The "bite me" post illustrates two dangers: first, launching a beta book before all of the chapters are there, and second doing a deployment book where people may expect a comprehensive reference manual for all of the deployed technologies. We already cover initial mongrel setup and will be extending that coverage in the chapter on management and configuration. We will not be a full Subversion reference, and I don't think doing so would be productive. But we do walk through using SVN in conjunction with Capistrano, and we'll be upgrading Cap to version 2 soon.
Of course we'll be covering Apache (and also ngnix) in the proxying/balancing chapter. That chapter will be one of the next two one we deliver in the beta program.
We'll also cover some of the basics for SSH in the management chapter. Don't expect a comprehensive guide for svn and ssh, though. We'll just walk through the setup and configuration.
Also to come are performance including benchmarking, profiling, and caching, and a little Active Record performance. We'll also cover Windows deployment based on our user feedback, and are looking into a chapter for JRuby.
So don't draw your conclusions too soon... much of what you ask for is in the works or already there.
Posted by: Bruce Tate | September 11, 2007 at 08:09 AM
ok but when will it come out as stable? :)
Posted by: skyblaze | September 18, 2007 at 03:12 AM