Today’s modern Rails applications have lots of moving parts. Make sure your next production deployment goes smoothly with this hands-on book, which guides you through the entire production process. You’ll set up scripts to install and configure all the software your servers need, including your application code. Once you’re in production, you’ll learn how to set up systems to monitor your application’s health, gather metrics so you can stop problems before they start, and fix things when they go wrong.

For Rails 3

Paperback list price normally $30.00, now on sale for $9.95 while supplies last.

Buy Now

Select a DRM-free Format:

In Stock
In Stock
In Stock
Buy the eBook and get these DRM-free formats delivered immediately:
  • epub (for iPhone/iPad, Android, eReaders)
  • mobi (for Kindle)
  • PDF
We can automatically send them to your Kindle or Dropbox, and for a social reading experience we can link the book to your Readmill account. (You'll need to log in to enable these options.)
 

About this Book

  • 240 pages
  • Published:
  • Release: P1.0 (2012-07-17)
  • ISBN: 978-1-93435-695-1

Deploying Rails takes you on a expertly guided tour of the current best practices in Rails deployment and management. You’ll find in-depth explanations on effectively running a Rails app by leveraging popular open source tools such as Puppet, Capistrano, and Vagrant. Then you’ll go beyond deployment and learn how to use Ganglia and Nagios to monitor your application’s health and gather metrics so you can head off problems before they happen.

You’ll start out by building your own virtual environment by writing scripts to provision a production server with Vagrant and Puppet. Then you’ll leverage the popular Rails deployment tool Capistrano to deploy an application into this infrastructure. Once the app is live, you’ll monitor your application’s health with Nagios, and configure Ganglia to collect system metrics. Finally, you’ll see how to keep your data backed up, recover data when things go wrong, tame your log files, and use Puppet to automate everything along the way.

If you’re a Rails developer who wants a better understanding of the needs of a production Rails system, if you’re a system administrator who wants to manage a Rails application, or if you’re bridging the gap between development and operations, this book will be your roadmap to successful production deployment and maintenance, whether your application has ten users or ten million users.

For Rails 3

What You Need:

The exercises and examples are most suited to a computer running some Unix variant, such as Mac OS X or Linux. But a Windows machine running Linux in a VirtualBox virtual machine is also sufficient.

We’ll show you how to set up a local virtual machine for your deployments; you won’t need a dedicated server to hone your deployment skills. We expect you to have a basic familiarity with the Ruby programming language, the Ruby on Rails framework, and the Unix command line.

Contents and Extracts

Full Table of Contents

Preface

  • Introduction
  • Getting Started with Vagrant excerpt
  • Rails on Puppet
  • Basic Capistrano
  • Advanced Capistrano excerpt
  • Monitoring with Nagios excerpt
  • Collecting Metrics with Ganglia
  • Maintaining the Application
  • Running Rubies with RVM
  • Special Topics
  • Bibliography

About the Author

Tom Copeland is also a Rails developer at LivingSocial. He has programmed in Ruby since 2004, consulted at InfoEther on Ruby on Rails applications since 2007, and received a “Ruby Hero” award in 2008. Before focusing on Ruby, he wrote two books on Java programming (PMD Applied and Generating Parsers with JavaCC) and was named Oracle’s “Open Source Developer of the Year” in 2003.

Anthony Burns is a professional Ruby and Rails developer at LivingSocial. Prior to LivingSocial, he worked at InfoEther, a Rails consultancy, where he handled deployment and infrastructure for various clients.

Upcoming Author Events

  • 2013-04-27: Brian P. Hogan
    JRuby - Imagine mixing the easy syntax, powerful language features, and rapid development of Ruby with the speed, power, and flexibility of the Java Virtual Machine? Ruby and the JVM go together like chocolate and peanut butter, and you'll see some examp (Twin Cities Code Camp, Minneapolis, MN)
  • 2013-08-13: Brian P. Hogan
    Testing Client Side Code with Jasmine and CoffeeScript With more logic moving from the client-side to the server-side, we've got to get better at testing code. In this talk you'll learn about writing tests for client-side code that help drive the d (ThatConference, Wisconsin Dells, Wisconsin)
  • 2014-04-05: Brian P. Hogan
    Automate with Grunt (Twin Cities Code Camp, Minneapolis, MN)

Comments and Reviews

  • Sean’s Obsessions said:

    As a systems administrator turned developer I was encouraged to see this book being released. It shows the ideal marriage of the systems administration mindset, with its relentless focus on automation and monitoring, with the tools available to the modern programmer. In some circles this practice is called DevOps, but even in shops that keep these two separate, this book will benefit both teams.

  • Deploying Rails will help you transform your deployment process from brittle chaos into something organized, understandable, and repeatable.

    —Trek Glowacki Independent Developer
  • Covering such a wide range of useful topics such as deployment, configuration management, and monitoring, in addition to using industry-standard tools following professionally founded best practices, makes this book an indispensable resource for any Rails developer.

    —Mitchell Hashimoto Lead developer, Vagrant
  • Targeted for the developer, Deploying Rails presents, in a clear and easily understandable manner, a bevy of some of the less intuitive techniques it has taken me years to assemble as a professional. If you build Rails apps and have ever asked, “Where/how do I deploy this?” this book is for you.

    —James Retterer Senior software engineer Getty Images