Ruby On Rails ready-to-run vMachine
Friday, October 19th, 2007Libre hosters,
We now have an official RoR Install image, that we use for Rails vMachine customers, based on Ubuntu.
It follows the recommended installs for both Ubuntu as well as RoR, and includes many defaults and well-chosen packages by us as well as favorites within the community.
Here’s the way we installed it – let’s start with a few useful utilities, plus ssh access:
apt-get update
apt-get -y install wget mc ssh curl lynx zip unzip arj rar unrar rsync rzip
Now we install the basic Ruby, as indicated here: https://help.ubuntu.com/community/RubyOnRails
apt-get -y install ruby rdoc irb libyaml-ruby libzlib-ruby ri
Note that we only want the basic ruby (1.85+) language install – everything else will be maintained by gems, including rails, so we install only rubygems itself from Debian/Ubuntu, and install Rails (and any/all other Ruby dependencies) directly via gems. Be sure you don’t step on gems by using apt-get to install ruby packages! Always use gems. here we go:
apt-get -y install rubygems
gem update –system
Note that the update –system updates the libraries to gems’ dependency needs, not Ubuntu’s – so now further ruby (and Rails-related) packages will install consistently with gems.
So let’s do it:
gem install rails -y –include-dependencies
And here are some other useful utilities and preparatory things from http://wiki.rubyonrails.org/rails/pages/RailsOnUbuntu, including MySQL, Mongrel, OpenSSL, and so forth:
apt-get -y install build-essential
apt-get -y install ruby1.8-dev
gem install mongrel –include-dependencies
apt-get -y install libmysql-ruby mysql-server
apt-get -y install libmysqlclient-dev
gem install mysql –include-dependencies
apt-get -y install libopenssl-ruby
apt-get -y install imagemagick
apt-get -y install libmagick-dev
gem install rmagick –include-dependencies
Note that the choices we made during the installations include:
- RubyGems 0.9.4
- mongrel 1.0.1 (ruby)
- fastthread 1.0 (ruby)
- mysql 2.7 (ruby)
And finally, lots of people, us included, like the ruby-based sysadmin tools of puppet and capistrano:
gem install puppet capistrano –include-dependencies
That’s it! You’re ready to roll with Libre Hosting on Rails!
Note that all RDocs are installed for the Ruby packages, as well.
Here’s a complete list of ruby gems packages installed:
actionmailer (1.3.5) Service layer for easy email delivery and testing.
actionpack (1.13.5) Web-flow and rendering framework putting the VC in MVC.
actionwebservice (1.2.5) Web service support for Action Pack.
activerecord (1.15.5) Implements the ActiveRecord pattern for ORM.
activesupport (1.4.4) Support and utility classes used by the Rails framework.
capistrano (2.1.0) Capistrano is a utility and framework for executing commands in parallel on multiple remote machines, via SSH.
cgi_multipart_eof_fix (2.3) Fix an exploitable bug in CGI multipart parsing.
daemons (1.0.8) A toolkit to create and control daemons in different ways
facter (1.3.8) Facter collects Operating system facts.
fastthread (1.0) Optimized replacement for thread.rb primitives
gem_plugin (0.2.2) A plugin system based only on rubygems that uses dependencies only
highline (1.4.0) HighLine is a high-level command-line IO library.
mongrel (1.0.1) A small fast HTTP library and server that runs Rails, Camping, Nitro and Iowa apps.
mysql (2.7) MySQL/Ruby provides the same functions for Ruby programs that the
MySQL C API provides for C programs.
needle (1.3.0) Needle is a Dependency Injection/Inversion of Control container for Ruby. It supports both type-2 (setter) and type-3 (constructor) injection. It takes advantage of the dynamic nature of Ruby to provide a rich and flexible approach to injecting dependencies.
net-sftp (1.1.0) Net::SFTP is a pure-Ruby implementation of the SFTP client protocol.
net-ssh (1.1.2) Net::SSH is a pure-Ruby implementation of the SSH2 client protocol.
puppet (0.23.2) System Automation and Configuration Management Software
rails (1.2.5) Web-application framework with template engine, control-flow layer, and ORM.
rake (0.7.3) Ruby based make-like utility.
rmagick (1.15.10) RMagick is an interface between the Ruby programming language and the ImageMagick and GraphicsMagick image processing libraries.
rubygems-update (0.9.4) RubyGems Update GEM
sources (0.0.1) This package provides download sources for remote gem installation