Showing posts with label Gems. Show all posts
Showing posts with label Gems. Show all posts

Monday, October 12, 2009

All Our Gems Are Belong to Gemcutter


So after github left us all hanging out to dry, Gemcutter is quickly becoming it's replacement and apparently the future of gem hosting. After working with gemcutter a bit, I'm actually becoming quite fond of it. It's easy to use and you get instant gem publishing.

To start using gemcutter as a source, it only takes a couple seconds:
  1. gem install gemcutter
  2. gem tumble (this adds gemcutter to the top of your gem sources list)
Then you'll want to uninstall and reinstall old gems as it appears that gem update will still grab from rubyforge if they existed there and you'll want to remove all your github sourced gems.

Here are the new homes for our main Appoxy gems:
Alright, now hopefully Gemcutter sticks around for a while so we don't have to do this again.

Saturday, July 18, 2009

Installing Ruby 1.9, Apache2, Rails, and Phusion Passenger on new Ubuntu EC2 Instance









Here's the step by step for getting Ruby on Rails running on a sparkling fresh new Amazon EC2 Instance.

1) Launch EC2 Instance

I won't explain this, but pick the latest Ubuntu AMI. The rest of this assumes you're ssh'd into the new isntance.

2) Install Ruby 1.9
  • apt-get update
  • apt-get upgrade
  • apt-get install zlibc zlib-bin zlib1g zlib1g-dbg zlib1g-dev libopenssl-ruby1.9 libssl-dev subversion git-core apache2 apache2-prefork-dev libapr1-dev
  • Install ruby
    • tar -zxvf ruby1.9....tgz
    • cd ruby1.9....
    • ./configure && make && make install
  • ruby -v
    • to check that installed properly
  • cd ext/openssl
  • ruby extconf.rb && make && make install
    • This installs openssl support for ruby

3) Now get Rails up and running

  • gem sources -a http://gems.github.com
  • gem install rails sqlite3-ruby passenger
  • passenger-install-apache2-module
    • follow instructions
    • it will give you a few lines you have to add to: /etc/apache2/apache2.conf (bottom is fine)
  • Get your Rails app on server somewhere
    • If you have an existing app, upload it to the server (eg: /home/myapp would work fine)
    • Now if you don't have a rails app ready to go, lets quickly make one
      • cd /home
      • rails first_rails
  • nano -w /etc/apache2/sites-available/first_rails
  • Assuming you have some.domain.com pointed to the server (this can replace the Apache default site as well):



    • ServerName www.yourhost.com # delete this line if replacing root
      DocumentRoot /home/rails/public
      Allow from all
      # RailsEnv development
      RailsDefaultUser root


  • a2ensite first_rails
    • adds site to sites-enabled
  • /etc/init.d/apache2 reload

That's it.

If you want your app under a sub directory of a different virtual host, see the instructions here:http://www.modrails.com/documentation/Users%20guide.html#_deploying_a_ruby_on_rails_application

Troubleshooting
  • If you get: no such file to load rbconfig.rb
    • be sure all 1.8 stuff is removed
      • apt-get remove libruby1.8 rubygems

And lastly, get the latest awesome gems for web development:

gem install uuidtools appoxy-aws right_http_connection appoxy-simple_record appoxy-local_cache quetzall-cloud_cache

And you should probably setup logrotate to keep your log files under control, but that will come in another post.