Home > Around Rails (with Rubies below), Networking > nginx reverse-proxying unicorn

nginx reverse-proxying unicorn

After the experiments detailed in my last post, I faced today the need to have clean ruby/gems environments for each project I deploy on my Amazon EC2 server. Just like on my development machine, I wish to use <code>rvm</code> to make a separate gemset for each application.

However, to be able to run each app in its own environment, using a dedicated ruby-server instance is needed. Like described in my previous post, I was using Passenger to do that. Trying to deploy a ruby-1.9.2 / rails 3.1 app, I could not get Passenger Standalone installed due to some rake > 0.9.0 incompatibilities. This required to get the last version of the Passenger gem on GitHub, what I can’t do with my current knowledge.

Since I was using Passenger to make deployment easier, I was wondering if it was still the case. And I was feeling like it was getting a very big machine running for each app, while there was surely other solutions. And sure there is! There are other ruby production-class servers which can be used: Thin, Unicorn, and surely many others. And since I’m reverse-proxying through nginx, I can use any of them.

So, from now, I’ll be using Unicorn. It’s much more easy to get it running, no need to have a complex and hazardous installation process, just add it to the Gemfile, bundle install and get it running. I think it will do the trick for now.

Advertisements
  1. No comments yet.
  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: