Ruby on Rails

Latest Article:

Capistrano Series - Installing Apache with Passenger (mod_rails) Support

One of the last things that we need to do is install Apache as our webserver, with Rails support via Passenger (mod_rails).

Passenger is an exciting development in Rails deployment, as it allows us to use a single webserver without the need to configure proxies. It supports both Apache and Nginx — for these articles we will be using Apache.

Ruby on Rails has seen an fantastic rise in popularity and with very good reasons.

These Ruby on Rails tutorials will take you through installing, configuring, deploying and serving your Rails Applications.

Ubuntu Intrepid and Ruby on Rails:

Ubuntu Intrepid - Ruby on Rails: Our Ubuntu Intrepid Slice is now ready for a Ruby on Rails stack with subversion and Postfix support.

Ubuntu Intrepid - MySQL with Rails and PHP options: Installing MySQL with Ruby on Rails and PHP integration is a simple process using the aptitude package manager.


Ubuntu Intrepid - mod_rails installation: Passenger (mod_rails) is an exciting and very easy to use method of serving your Ruby on Rails application.

Ubuntu Intrepid - using mod_rails to serve your application: Now passenger is installed, let's see how to serve our Ruby on Rails application.


Ubuntu Intrepid - Thin web server for Ruby: Thin is a well established method of serving Ruby on Rails applications. Let's look at the installation and configuration of thin.

Ubuntu Intrepid - Apache Rails and Thin: Now we've installed and looked at configuring the thin web server, let's create an Apache vhost to proxy our requests.

Ubuntu Intrepid - Nginx, Rails and thin: Creating a virtual host to proxy requests to the thin web server is very simple. Even easier then using mongrels.


Ubuntu Intrepid - Mongrel and mongrel_cluster installation: Mongrels are one of the original ways of serving a Ruby on Rails application using a 3rd party server.

Ubuntu Intrepid - Apache, Rails and mongrels: Now we have mongrels and mongrel_clusters installed, we can move onto create an Apache vhost.

Ubuntu Intrepid - Nginx, Rails and mongrels: Creating a virtual host to proxy requests to our rails application is very simple. Using a mongrel cluster has never been easier.


Ubuntu Hardy and Ruby on Rails:

Ubuntu Hardy - Ruby on Rails: Our Ubuntu Hardy Slice is now ready for a Ruby on Rails stack with subversion and Postfix support.

Ubuntu Hardy - MySQL with Rails and PHP options: Installing MySQL with Ruby on Rails and PHP integration is a simple process using the aptitude package manager.

Ubuntu Hardy - Ruby on Rails and PHP integration with PostgreSQL: Now postgreSQL has been installed on our Ubuntu Hardy Slice, we can look at getting our language/framework of choice to integrate with the database.


Ubuntu Hardy - mod_rails installation: Passenger (mod_rails) is an exciting and very easy to use method of serving your Ruby on Rails application.

Ubuntu Hardy - using mod_rails to serve your application: Now passenger is installed, let's see how to serve our Ruby on Rails application.


Ubuntu Hardy - Thin web server for Ruby: Thin is a well established method of serving Ruby on Rails applications. Let's look at the installation and configuration of thin.

Ubuntu Hardy - Apache Rails and Thin: Now we've installed and looked at configuring the thin web server, let's create an Apache vhost to proxy our requests.

Ubuntu Hardy - Nginx, Rails and thin: Creating a virtual host to proxy requests to the thin web server is very simple. Even easier then using mongrels.


Ubuntu Hardy - Mongrel and mongrel_cluster installation: Mongrels are one of the original ways of serving a Ruby on Rails application using a 3rd party server.

Ubuntu Hardy - Apache, Rails and mongrels: Now we have mongrels and mongrel_clusters installed, we can move onto create an Apache vhost.

Ubuntu Hardy - Nginx, Rails and mongrels: Creating a virtual host to proxy requests to our rails application is very simple. Using a mongrel cluster has never been easier.


Debian Lenny and Ruby on Rails:

Debian Lenny - Ruby on Rails: Our Debian Lenny Slice is now ready for a Ruby on Rails stack with subversion and exim4 support.

Debian Lenny - MySQL with Ruby on Rails and PHP: Now we have MySQL installed on our Debian Lenny Slice we can look at how to integrate it with Ruby on Rails and PHP.


Debian Lenny - Passenger with Apache: So our Debian Lenny Slice has a nice Rails stack, how are we going to serve the content? Enter mod_rails (Passenger).

Debian Lenny - Using passenger and Apache to serve your application : So, we have mod_rails (Passenger) installed. Let's go ahead and see how incredibly simple it is to serve our Rails application


CentOS and Ruby on Rails:

CentOS - Ruby on Rails: Our CentOS Slice is now ready for a Ruby on Rails stack with subversion and Postfix support.

CentOS - MySQL with Rails and PHP options: Installing MySQL with Ruby on Rails and PHP integration is a simple process using the yum package manager.


CentOS - mod_rails Installation: Passenger (mod_rails) is an exciting and very easy to use method of serving your Ruby on Rails application.

CentOS - Using mod_rails to serve your application: Now passenger is installed, let's see how to serve our Ruby on Rails application.


CentOS - Thin web server for Ruby: Thin is a well established method of serving Ruby on Rails applications. Let's look at the installation and configuration of thin.

CentOS - Apache, Rails, and thin: Now we've installed and looked at configuring the thin web server, let's create an Apache vhost to proxy our requests.

CentOS - Nginx, Rails, and thin: Creating a virtual host to proxy requests to the thin web server is very simple. Even easier then using mongrels.


CentOS - Mongrel and mongrel_cluster installation: Mongrels are one of the original ways of serving a Ruby on Rails application using a 3rd party server. Let's look at the installation.

CentOS - Apache, Rails, and mongrels: Now we have mongrels and mongrel_clusters installed, we can move onto create an Apache vhost for our rails application.

CentOS - Nginx, Rails, and mongrels: Creating a virtual host to proxy requests to our rails application is very simple. Using a mongrel cluster has never been easier.


Installation on other Linux OSs

Ubuntu LTS - MySQL and RoR: Ubuntu LTS: Let's install a MySQL and Ruby on Rails stack with subversion and postfix support.

Ubuntu Feisty - MySQL and RoR: Ubuntu Feisty: Installing a MySQL and Ruby on Rails stack with subversion and postfix support.

Ubuntu Gutsy - MySQL and RoR: Ubuntu Gutsy: Installing a MySQL and Ruby on Rails stack with subversion and Postfix support.

Debian Etch - MySQL and RoR: Debian Etch: Installing a MySQL and Ruby on Rails stack with subversion and postfix support.


Mongrels:

Debian Etch - Apache, Rails and Mongrels: Using Apache to proxy requests to mongrel server(s) is not as complicated as it may seem. Let's set it up.

Debian Etch - Mongrel clusters and surviving a reboot: This article looks at mongrel clusters and ensuring they restart on a reboot using Debian Etch.


Ubuntu Gutsy - Apache, Rails and Mongrels: Using Apache to proxy requests to mongrel server(s) is one way of serving a Rails application. Let's set it up.

Ubuntu Gutsy - Nginx, Rails and Mongrels: Using Nginx to proxy requests to mongrel server(s) is one of the ways of serving a Rails application.

Ubuntu Gusty - Mongrel clusters and surviving a reboot: Following the previous article, we now look at mongrel clusters and ensuring they restart on a reboot.


Ubuntu Feisty - Apache, Rails and Mongrels: Using Apache to proxy requests to mongrel server(s) is one of the ways of serving a Rails application.

Ubuntu Feisty - Mongrel clusters and surviving a reboot: Following the previous article, we now look at mongrel clusters and ensuring they restart on a reboot.


Capistrano Mini-Series (new and improved):

New Capistrano Series - Introduction: This second series of Capistrano articles utilise the git version control system and the base distro is the latest LTS version from Ubuntu (known as Hardy Heron). It also incorporates a newer version of capistrano.

Introduction to Capistrano 2: Before delving into the new series, take a look at this overview of what Capistrano is and what is does. If you are not sure of the concept behind this great tool, then take a peak.


Setting up your Slice: Now we've read a couple of articles, we can get down and start to configure the Slice ready for us to install git as the first step in our stack.

Setting up git: Your Slice is now ready for the first phase of the Ruby on Rails and Capistrano stack. Let's get on and install and configure the version control system called 'git'.


Installing Ruby, Rubygems and sqlite3: Let's continue setting up our Slice for our stack. We'll look at installing Ruby, Rubygems and sqlite.

Installing Apache with Passenger (mod_rails) Support: Following along with this series, we can now move forward to installing Apache with Passenger (mod_rails) support.


Capistrano Mini-Series:

Capistrano Series - Introduction: Introducing the aims and goals of the Capistrano mini series.

Introduction to Capistrano 2: Overview of what Capistrano is and what is does. If you are not sure of the concept behind this great tool, then take a peak.


Setting up your Slice: Now we've read a couple of articles, we can get down and start to configure the Slice ready for the Capistrano stack.

Setting up Subversion: Your Slice is now ready for the first phase of the Ruby on Rails and Capistrano stack. Let's get on and install and configure Subversion.

Installing Ruby, Nginx and sqlite3: Now we can really see the setup start to take shape by installing Ruby, rubygems, the lightweight Nginx web server and sqlite3.

Nginx, Rails and Mongrels: One of the last things on the Slice is to install and configure Ruby on Rails and Nginx with mongrel support.


Local setup and Capistrano: Now the Slice is pretty much setup, we can move onto the local workstation to check out and 'capify' our project.


Configuring Capistrano #1: Now we can look at the Capistrano deploy.rb file, define some variables and issue our first Capistrano command.

Configuring Capistrano #2: Some final tweaks to the deploy.rb file and creating a script/spin file will allow us to deploy our application for the first time.


Appication Vhost Creation: Now we've deployed our application for the first time, let's create a simple Nginx vhost to serve it.

Deploying Application Changes: Let's take a look at adding a custom task. Then all we do is enter one command to deploy any application changes.


Handling Database Migrations: Now the main setup and deployment has been completed, let's look at how Capistrano handles database migrations.

Alternative Subversion setups: If your Subversion repository is on the same Slice as your application, you may want to look at this method of configuring Capistrano.

Please feel free to request articles or comment with any suggestions or ideas of your own.

PickledOnion