Tech Tidbits - Ruby, Ruby On Rails, Merb, .Net, Javascript, jQuery, Ajax, CSS...and other random bits and pieces.

Friday, June 8, 2007

Ruby on Rails/Mongrel/Ubuntu

I've been using Ubuntu lately and decided to install Ruby on Rails and Mongrel.


$ sudo apt-get install ruby irb rdoc


Or download the source for the latest version (apt-get installs 1.8.4, but the latest source is 1.8.6):


$ tar zxvf ruby-1.8.6.tar.gz
$ cd ruby-1.8.6
$ ./configure
$ make
$ sudo make install


Once ruby is installed, I typically use Gems if I can.

Download the latest Gems at http://rubyforge.org/frs/?group_id=126 (0.9.4 in this case) and then:


$ tar xzvf rubygems-0.9.4.tgz
$ cd rubygems-0.9.4
$ sudo ruby setup.rb


Install Rails:

sudo gem install rails --include-dependencies


Install Mongrel and Mongrel cluster gem plugin:

sudo gem install mongrel --include-dependencies
sudo gem install mongrel_cluster


Install Apache 2.2

$ tar zxvf httpd-2.2.4.tar.gz
$ cd httpd-2.2.4
$ ./configure \
--prefix=/usr/local/apache \
--enable-rewrite \
--enable-headers \
--enable-ssl \
--enable-proxy \
--with-mpm=prefork
$ make
$ sudo make install


I got this error when running configure:

Configuring Apache Portable Runtime Utility library...

checking for APR-util... yes
configure: error: Cannot use an external APR-util with the bundled APR
make: *** [apache] Error 1


Adding this option fixed the problem:

--with-included-apr


Running Apache with a single Mongrel Instance

$ mongrel_rails start -p 8000 -e production -d


Add to apache conf (httpd.connf)

ServerName hostname.com
ServerAlias www.hostname.com

ProxyPass / http://www.hostname.com:8000/
ProxyPassReverse / http://www.hostname.com:8000/
ProxyPreserveHost on


Restart Apache and it will forward requests for www.hostname.com on port 80 to Mongrel server running on port 8000.

No comments:

About Me

My photo
Developer (Ruby on Rails, iOS), musician/composer, Buddhist, HSP, Vegan, Aspie.

Labels