MediaTemple and Rails Part 1, The Install

Posted by Paul Haddad Tue, 23 Oct 2007 19:38:00 GMT

So assuming you’ve ordered a MediaTemple Dedicated-Virtual Server account and you want to setup a proper rails/mongrel setup you’ll want to follow the below instructions.

The first thing you want to do is ask support to make some changes to your machine.

  1. Ask them to enable root ssh access
  2. Ask them to install the Developer Tools on the machine
  3. (Optional) Ask them to disable Plesk. I personally don’t like stuff like Plesk, but some folks do.

Unfortunately, MT was a bit slow at doing all the above so give yourself a day or two for all the above to finish, they’ll probably need to re-image your server, so wait until they are all finished before you put anything on there.

For some reason MT doesn’t install yum as part of their base install, so the next step is to install yum.

Go to the Centos Vault and download the needed packages. Should be the following.

  1. yum-2.4.3-1.c4.noarch.rpm
  2. python-sqlite-1.1.7-1.2.i386.rpm
  3. python-elementtree-1.2.6-4.2.1.i386.rpm
  4. python-urlgrabber-2.9.8-2.noarch.rpm
  5. sqlite-3.3.3-1.2.i386.rpm
  6. sqlite-devel-3.3.3-1.2.i386.rpm

Use wget or curl to download these files to a directory and then use

rpm -i *
to install everything (note make sure you do this as the root user).

Now that you have yum install you can easily install the right versions of apache and ruby. First let’s configure yum to grab new versions of apache from the Utter Ramblings Repo.

Create a file in /etc/yum.repos.d called utterramblings.repo and add the following lines to it.

    [utterramblings]
    name=Jason's Utter Ramblings Repo
    baseurl=http://www.jasonlitka.com/media/EL$releasever/$basearch/
    enabled=1
    gpgcheck=1
    gpgkey=http://www.jasonlitka.com/media/RPM-GPG-KEY-jlitka

Once this is done you should issue a

yum update
command and let the latest apache and such be updated. Follow this up with a simple install of ruby 1.8.5 using the CentOS-Testing.repo.

Create a CentOS-Testing.repo in /etc/yum.repos.d and put the following content in it.

    [c4-testing]
    name=CentOS-4 Testing 
    baseurl=http://dev.centos.org/centos/$releasever/testing/$basearch/
    enabled=1
    gpgcheck=1
    gpgkey=http://dev.centos.org/centos/RPM-GPG-KEY-CentOS-testing

This time just issue an

yum update ruby
command. Edit the CentOS-Testing.repo file and set
enabled=1
to
enabled=0
since we don’t want this particular repository for anything other then this.

Almost done! Just follow the RubyGems Installation Instructions and type in

gem install rails

Voila a Rails setup. You’ll probably want to add in gems for mysql and such, but at least this should get you going as far as MT is concerned.

Posted in  | Tags , ,  | no comments

Hosting Rails Fun or You Get what You Pay For

Posted by Paul Haddad Thu, 18 Oct 2007 14:35:00 GMT

I think I'm on my 4th web provider in 3 years. I started over at Hurricane Electric which is actually a rather decent provider for static content. They are however a bit expensive so I was lured over to DreamHost. Now I know a lot of people dislike DreamHost but for static content its hard to beat them from a feature and price standpoint.

The problem with Dreamhost started when I went to deploy my first rails app. This is something I wouldn't recommend for anyone. Dreamhost just isn't setup to host something like rails, they have very strict monitoring software that kill any long running processes or anything that consumes too much memory. This pretty much kills Rails so it was time for another move.

After looking around for quite a bit I settled on HostingRails.com which seemed to be a good choice, for a while. They had fairly knowledgeable support folks and were able to setup some mongrel instances and a fastcgi instance for me. I'm not really crazy about their cPanel based control panel, but then I'm not really crazy about any of those control panels. However HostingRails.com has started getting really problematic lately. I have offsite monitoring tools running and several times a day my rails site would show as being down, most of the time this was a 10-30 minute problem, however recently I've had at least a couple outings that lasted several hours. Following up with support wasn't really very useful, it'd take several hours to fix anything and sometimes I didn't even get replies. The final straw was when for no reason they decided to firewall outgoing packets to my credit card processor.

After more looking around I switched over to a Virtual Host over at MediaTemple. I debated going with their Grid Service but saw a few bad reports on it and was tired of risking it. The Virtual Host setup seems to be pretty good (specially once I had them remove that Plesk stuff). Their email based support seems glacially slow, but that's about the only complaint I have with them so far. I've got 4 mongrel instances running across 3 different applications (2 typo blogs and the backend store for PTH. Again so far so good, I'm a little concerned that I might be going the memory allocation, but they haven't complained yet. :^)

I'll talk some more about how to properly install rails on one of these Centos 4 like boxes in a future blog entry.

Posted in  | Tags , , ,  | no comments