RE: rails, nginx, unicorn


#1

Hello,

Is there a rails,nginx, unicorn cookbook out there in chef land that is
maintained by a web 3.0 company out there? :slight_smile:

For some reason I see most people are still stuck with apache.

I know I can build my own (that’s the beauty of chef hehe) but just curious
if there any any cookbooks that are rails/ruby specific that are maintained
by a company that just so happens to open source their devops.

Thanks for your guidance.


#2

We’ve written a few cookbooks for our Rails apps, but they’re private for various reasons. However, the community nginx cookbook is pretty good: https://github.com/opscode-cookbooks/nginx

And you can check out our fork of it that adds some socket proxy goodness for Unicorn:

The pattern we follow is to set up the server with nginx properly configured, then let the apps’ deployments install rbenv, Ruby, & Bundler, then use Bundler to install all the necessary gems for the app. Initial deployment is a bit slow, but after that, you’ve got the flexibility to let your apps determine the specific versions of things you need (e.g., Ruby itself, Rails, various gems).


Jeff Byrnes
@berkleebassist
Operations Engineer
EverTrue
704.516.4628

On April 16, 2014 at 11:09:11 AM, S Ahmed (sahmed1020@gmail.com) wrote:

Hello,

Is there a rails,nginx, unicorn cookbook out there in chef land that is maintained by a web 3.0 company out there? :slight_smile:

For some reason I see most people are still stuck with apache.

I know I can build my own (that’s the beauty of chef hehe) but just curious if there any any cookbooks that are rails/ruby specific that are maintained by a company that just so happens to open source their devops.

Thanks for your guidance.


#3

Thanks. WHere exactly is that socket proxy goodness? :slight_smile:

If you install unicorn via ‘gem install unicorn’, what about the start/stop
scripts etc?

On Wed, Apr 16, 2014 at 12:00 PM, Jeff Byrnes jeff@evertrue.com wrote:

We’ve written a few cookbooks for our Rails apps, but they’re private for
various reasons. However, the community nginx cookbook is pretty good:
https://github.com/opscode-cookbooks/nginx

And you can check out our fork of it that adds some socket proxy goodness
for Unicorn:
https://github.com/evertrue/nginx-cookbook

The pattern we follow is to set up the server with nginx properly
configured, then let the apps’ deployments install rbenv, Ruby, & Bundler,
then use Bundler to install all the necessary gems for the app. Initial
deployment is a bit slow, but after that, you’ve got the flexibility to let
your apps determine the specific versions of things you need (e.g., Ruby
itself, Rails, various gems).


Jeff Byrnes
@berkleebassist http://twitter.com/berkleebassist
Operations Engineer
EverTrue http://www.evertrue.com/
704.516.4628

On April 16, 2014 at 11:09:11 AM, S Ahmed (sahmed1020@gmail.com) wrote:

Hello,

Is there a rails,nginx, unicorn cookbook out there in chef land that is
maintained by a web 3.0 company out there? :slight_smile:

For some reason I see most people are still stuck with apache.

I know I can build my own (that’s the beauty of chef hehe) but just
curious if there any any cookbooks that are rails/ruby specific that are
maintained by a company that just so happens to open source their devops.

Thanks for your guidance.


#4

The socket proxy stuff is over on its own branch: https://github.com/evertrue/nginx-cookbook/tree/add_socket_proxy_type

Here’s the diff master…add_socket_proxy_type on our fork. Bear in mind our fork’s master is likely behind the upstream, community cookbook.

As for the start & stop scripts, we use Capistrano to deploy our apps, and we have a number of nice gems for Cap that handle Unicorn stuff. For Unicorn itself, check out sepastian-capistrano3-unicorn. We use these gems to handle installing rbenv and Ruby:
capistrano-rbenv
capistrano-rbenv-maintenance
They’re all available on Rubygems, and hopefully the README helps you out, but feel free to open an issue on the requisite repositories if need be.


Jeff Byrnes
@berkleebassist
Operations Engineer
EverTrue
704.516.4628

On April 23, 2014 at 11:49:27 AM, S Ahmed (sahmed1020@gmail.com) wrote:

Thanks. WHere exactly is that socket proxy goodness? :slight_smile:

If you install unicorn via ‘gem install unicorn’, what about the start/stop scripts etc?

On Wed, Apr 16, 2014 at 12:00 PM, Jeff Byrnes jeff@evertrue.com wrote:
We’ve written a few cookbooks for our Rails apps, but they’re private for various reasons. However, the community nginx cookbook is pretty good: https://github.com/opscode-cookbooks/nginx

And you can check out our fork of it that adds some socket proxy goodness for Unicorn:

The pattern we follow is to set up the server with nginx properly configured, then let the apps’ deployments install rbenv, Ruby, & Bundler, then use Bundler to install all the necessary gems for the app. Initial deployment is a bit slow, but after that, you’ve got the flexibility to let your apps determine the specific versions of things you need (e.g., Ruby itself, Rails, various gems).


Jeff Byrnes
@berkleebassist
Operations Engineer
EverTrue
704.516.4628

On April 16, 2014 at 11:09:11 AM, S Ahmed (sahmed1020@gmail.com) wrote:

Hello,

Is there a rails,nginx, unicorn cookbook out there in chef land that is maintained by a web 3.0 company out there? :slight_smile:

For some reason I see most people are still stuck with apache.

I know I can build my own (that’s the beauty of chef hehe) but just curious if there any any cookbooks that are rails/ruby specific that are maintained by a company that just so happens to open source their devops.

Thanks for your guidance.