Written by Sean Behan on Sun Jun 17th 2012

Short and sweet. Here all the commands I run in this order to set up a brand new box. It usually takes about 10 - 15 minutes on a 256 MB RAM instance. Compiling Ruby Enterprise Edition, which is super easy, will take the most amount of time. It will seem to have gotten stuck. It hasn't. It just takes a little while.

# Update, upgrade and install all necessary packages for Ruby on Rails server if you've got a fresh Ubuntu slice
apt-get update
apt-get upgrade

apt-get install build-essential patch libssl-dev libreadline5-dev

apt-get install ruby1.8-dev ruby1.8 ri1.8 rdoc1.8 irb1.8 libreadline-ruby1.8 libruby1.8 libopenssl-ruby imagemagick librmagick-ruby1.8 librmagick-ruby-doc libfreetype6-dev xml-core postfix

postfix will prompt you for details

use Internet Site and enter in the domain name you are planning on sending email from

apt-get install apache2 apache2-prefork-dev libapr1-dev libaprutil1-dev libcurl4-openssl-dev git-core mysql-server mysql-client libmysqlclient15-dev libmysql-ruby

mysql will also prompt you to set up a root user account. set the password to be anything you like

next, download the latest release of ruby enterprise edition but when you're installing it on your own machine version numbers and release dates may have changed.

pay attention to the version and release date before the file extension. it will be something like

... 1.8.7-2010.02

this will change to something like 2011.03, 2011.04... etc in the future.

just double check the paths on when you are installing and make the necessary substitutions

ruby enterprise edition is available at http://www.rubyenterpriseedition.com/download.html

wget http://rubyforge.org/frs/download.php/71096/ruby-enterprise-1.8.7-2010.02.tar.gz tar xzvf ruby-enterprise-1.8.7-2010.02.tar.gz


this may take a little while (just follow the instructions)

and hit enter to install in default location (recommended) when prompted

and to install passenger (which is mod_rails for apache)


i take the output from the above script and add it to my available modules directory

vim /etc/apache2/mods-available/passenger.conf

and enter something like this in the newly created file (your version numbers will prob. be different)

LoadModule passenger_module /opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/gems/1.8/gems/passenger-3.0.2/ext/apache2/mod_passenger.so PassengerRoot /opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/gems/1.8/gems/passenger-3.0.2 PassengerRuby /opt/ruby-enterprise-1.8.7-2010.02/bin/ruby

and then sym link it to the enabled directory so that apache knows about it

ln -s /etc/apache2/mods-available/passenger.conf /etc/apache2/mods-enabled/passenger.conf

and now i want to include ruby enterprise edition in my path so i add it to my profile (again make sure the path is correct)

vim /etc/profile.d/passenger.sh export PATH=/opt/ruby-enterprise-1.8.7-2010.02/bin:$PATH

. /etc/profile.d/passenger.sh

the "." file will make the setting available for the current terminal session

rails -v ruby -v rake -v

should all be working now


which ruby

should point to the ruby enterprise edition under /opt

next i

set up public/private keys

so i can do

ssh localhost without using a password

cd test -e ~/.ssh/id_dsa.pub || ssh-keygen -t dsa cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys2

and finally install git

apt-get install git-core

You should now have a server ready to server ruby on rails applications!

Tagged with..
#deployment #Git #MySQL #rackspace #Rails #ruby #ruby enterprise edition #ubuntu #Ruby on Rails

Just finishing up brewing up some fresh ground comments...