Rails 3.2.8をUbuntuに一からインストールしてみる

2012年9月30日

UbuntuにRails3.2.8の実行環境を一からインストールしてみます。

Ubuntuは12.04を使用します。

まずは

Rubyから、と言いたい所ですが、必要パッケージ類から

sudo apt-get install make build-essential libssl-dev zlib1g-dev \
apache2-mpm-prefork apache2-prefork-dev libapr1-dev libaprutil1-dev \
libcurl4-openssl-dev libmysqlclient-dev

MySQLをインストール
[shell]sudo apt-get install mysql-server mysql-client[/shell]
続いて、RubyはUbuntuのパッケージで1.9.3と言うのがあるので、これを入れます。
[shell]sudo apt-get install ruby1.9.3[/shell]
Railsを入れます。
[shell]sudo gem install rails -v3.2.8 –no-ri –no-rdoc[/shell]
riとrdocはいらないので、無しオプション付きで。

MySQLとのコネクタgemをインストール
[shell]sudo gem install mysql[/shell]
Passengerをインストール
[shell]sudo gem install passenger[/shell]
Passengerのコンパイル
[shell]sudo passenger-install-apache2-module[/shell]
Passengerの設定ファイルを作成

passenger-install-apache2-moduleの実行後にpassenger_moduleに関する設定が3行表示されるので、それを

/etc/apache2/conf.d/passenger.conf

に設定

ここからRailsの操作になります。

新しいプロジェクトを作成
データベースはMySQLを使うので、オプション指定
[shell]rails new myproj -d mysql[/shell]
ひとまず、rake -Tをしてみます。
[shell]rake -T[/shell]
rake -T とやると、エラーになります。

Could not find a JavaScript runtime. See https://github.com/sstephenson/execjs for a list of available runtimes. (ExecJS::RuntimeUnavailable)

これは、JavaScriptのランタイムが設定されていないと言っているので、GemFileに
[shell]gem 'execjs’
gem 'therubyracer'[/shell]
という2行を追加して

bundle 実行します。

これで、rake -Tの結果が表示されるようになったと思います。

続いて、MySQL上にデータベースを作成します。
[shell]mysql -uroot -p[/shell]
でMySQLにログイン後、テーブル作成
[shell]create database muproj_development;
exit[/shell]
続いて、実験用にusersテーブルを作ります。
[shell]rails g scaffold users name:string age:integer[/shell]
これで、users用のコントローラやモデルなどが一式作成されます。

データベースにテーブルを作成します。
[shell]rake db:migrate[/shell]
これで、myprojの準備は整いました。
[shell]rails s[/shell]
でmyprojを起動してみましょう。

正常に起動出来たら、ブラウザからアクセス

http://localhost:3000/users