2009年05月01日

CentOS 5.3に、Rails 2.3 をインストールしてみる

ここのところRuby On Railsの環境の構築を模索しています。

目標として、
  • 開発環境から本番環境まで極力環境を揃えたい。
  • なるべくなら最新バージョンのRailsを扱いたい。
  • 開発においては全面的にIDE(統合開発環境)を用いてラクしたい。
  • 各レイヤ(Rails,Rubyなど)のバージョンアップにあまり手間をかけずに対応したい。

これらを考慮すると、
  • 開発環境:VMware上の仮想Linuxマシン
  • テスト環境:VMware上の仮想Linuxマシン
  • 本番環境:Linuxサーバー

といった組み合わせが思い浮かびました。

当初、この構成において、IDEは開発用クライアントマシン(Windows)にインストールし、Rubyの実行環境は仮想マシンを利用するのがスマート、オレ天才、などと浮かれていましたが、IDEの設定においてRubyのインストールパスを仮想マシンにマッピングすることが出来ない、という事に気が付き…orz

仕方がないので、パフォーマンスに問題がありますが、IDEは仮想マシンに直接乗せてしまう、という前提で作業を行いました。

ディストリビューションはCentOSをチョイスしました。CentOSはきれいなデスクトップ環境もありますし、当然、アプリケーションサーバーとしてもあり得る選択です。開発から本番まで全部揃えるには向いているかもしれません。

以下はCentOS5.3にRails2.3をインストールしてみた際のログです。




参考:


インストールにあたっては以下のサイトをありがたく参考にさせていただきました。詳しい内容はこちらでご確認ください。

構築環境:


  • CentOS 5.3(Lenny)(VMware/GUI付き最小インストール)
  • Ruby 1.8.7-p160
  • RubyGems 1.3.2
  • Ruby on Rails 2.3.2

以下、作業は全てrootでしでかしてますが見逃してください。

準備


CentOSのバージョン確認

# cat /etc/redhat-release
実行結果
[root@localhost ~]# cat /etc/redhat-release
CentOS release 5.3 (Final)

gccのインストール

# yum install gcc* compat-gcc* compat-lib*
実行結果

Installing : libgomp [ 1/30]
Installing : libgnat [ 2/30]
Installing : libgfortran [ 3/30]
Installing : libgfortran43 [ 4/30]
Installing : compat-libf2c-34 [ 5/30]
Installing : libobjc [ 6/30]
Installing : libstdc++43-devel [ 7/30]
Installing : libstdc++-devel [ 8/30]
Installing : zlib-devel [ 9/30]
Installing : libgcj-devel [10/30]
Installing : kernel-headers [11/30]
Installing : compat-libstdc++-33 [12/30]
Installing : compat-libstdc++-296 [13/30]
Installing : compat-libcom_err [14/30]
Installing : glibc-headers [15/30]
Installing : glibc-devel [16/30]
Installing : compat-libgcc-296 [17/30]
Installing : gcc [18/30]
Installing : compat-gcc-34 [19/30]
Installing : gcc43 [20/30]
Installing : gcc-objc [21/30]
Installing : gcc-c++ [22/30]
Installing : compat-gcc-34-c++ [23/30]
Installing : compat-gcc-34-g77 [24/30]
Installing : gcc-gfortran [25/30]
Installing : gcc-java [26/30]
Installing : gcc-objc++ [27/30]
Installing : gcc-gnat [28/30]
Installing : gcc43-c++ [29/30]
Installing : gcc43-gfortran [30/30]

Complete!

開発ツールのインストール

# yum groupinstall 'Development Libraries'
実行結果

Installing : nspr-devel [ 1/53]
Installing : nss-devel [ 2/53]
Installing : libxml2-devel [ 3/53]
Installing : libsepol-devel [ 4/53]
Installing : libselinux-devel [ 5/53]
Installing : slang-devel [ 6/53]
Installing : libattr-devel [ 7/53]
Installing : libgpg-error-devel [ 8/53]
Installing : libgcrypt-devel [ 9/53]
Installing : libxslt-devel [10/53]
Installing : sqlite-devel [11/53]
Installing : e2fsprogs-devel [12/53]
Installing : libtermcap-devel [13/53]
Installing : libidn-devel [14/53]
Installing : keyutils-libs-devel [15/53]
Installing : libogg-devel [16/53]
Installing : pciutils-devel [17/53]
Installing : kudzu-devel [18/53]
Installing : libvorbis-devel [19/53]
Installing : readline-devel [20/53]
Installing : libacl-devel [21/53]
Installing : newt-devel [22/53]
Installing : ncurses-devel [23/53]
Installing : pcsc-lite-devel [24/53]
Installing : expat-devel [25/53]
Installing : db4-devel [26/53]
Installing : coolkey-devel [27/53]
Installing : libusb-devel [28/53]
Installing : gpm-devel [29/53]
Installing : hesiod-devel [30/53]
Installing : pam-devel [31/53]
Installing : bzip2-devel [32/53]
Installing : gmp-devel [33/53]
Installing : lockdev-devel [34/53]
Installing : libcap-devel [35/53]
Installing : dbus-devel [36/53]
Installing : gdbm-devel [37/53]
Installing : krb5-devel [38/53]
Installing : boost [39/53]
Installing : xmlsec1 [40/53]
Installing : glib2-devel [41/53]
Installing : cyrus-sasl-devel [42/53]
Installing : xulrunner-devel [43/53]
Installing : python-devel [44/53]
Installing : openssl-devel [45/53]
Installing : curl-devel [46/53]
Installing : xmlsec1-devel [47/53]
Installing : openldap-devel [48/53]
Installing : libuser-devel [49/53]
Installing : boost-devel [50/53]
Installing : elfutils-libelf-devel [51/53]
Installing : elfutils-libelf-devel-static [52/53]
Installing : rpm-devel [53/53]

Complete!

開発ツールの内容確認

# yum grouplist hidden

rpm-buildのインストール

# yum install rpm-build
実行結果

Installing : elfutils-libs [1/3]
Installing : elfutils [2/3]
Installing : rpm-build [3/3]

Complete!

checkinstallのインストール


ファイルの取得1

# wget http://dag.wieers.com/packages/RPM-GPG-KEY.dag.txt
実行結果

Saving to: `RPM-GPG-KEY.dag.txt'

100%[=======================================>] 1,672 --.-K/s in 0s

14:11:09 (59.4 MB/s) - `RPM-GPG-KEY.dag.txt' を保存しました [1672/1672]

ファイルの取得2

# wget http://dag.wieers.com/packages/rpmforge-release/rpmforge-release-0.3.6-1.el5.rf.i386.rpm
実行結果

Saving to: `rpmforge-release-0.3.6-1.el5.rf.i386.rpm'

100%[=======================================>] 16,698 16.8K/s in 1.0s

14:12:27 (16.8 KB/s) - `rpmforge-release-0.3.6-1.el5.rf.i386.rpm' を保存しました [16698/16698]

レポジトリファイルのインストール

# rpm -ivh rpmforge-release-0.3.6-1.el5.rf.i386.rpm
実行結果
警告: rpmforge-release-0.3.6-1.el5.rf.i386.rpm: ヘッダ V3 DSA signature: NOKEY, key ID ********
準備中... ########################################### [100%]
1:rpmforge-release ########################################### [100%]

レポジトリファイルの編集

# gedit /etc/yum.repos.d/rpmforge.repo
enabled=1をenables=0に

レポジトリファイルのインストール

# rpm --import RPM-GPG-KEY.dag.txt

checkinstallのインストール

# yum --enablerepo=rpmforge install checkinstall
実行結果

Installing : checkinstall [1/1]

Complete!

Rubyのインストール


Ruby のソースを取得し、コンパイル、checkinstall を使って RPM にする。

インストール済みRubyの削除

# yum remove ruby
実行結果
Loaded plugins: fastestmirror
Setting up Remove Process
No Match for argument: ruby
No Packages marked for removal

Rubyソースの取得

# wget ftp://ftp.ruby-lang.org/pub/ruby/1.8/ruby-1.8.7-p160.tar.gz
実行結果

100%[=======================================>] 4,818,817 819K/s in 5.8s

14:41:01 (817 KB/s) - `ruby-1.8.7-p160.tar.gz' を保存しました [4818817]

展開

# tar xzvf ruby-1.8.7-p160.tar.gz

解凍したフォルダへ移動

# cd ruby-1.8.7-p160

Makefileの生成

# ./configure --prefix=/usr

Make

# make

cheinstallの実行

# /usr/sbin/checkinstall --fstrans=no
Slackware [S], RPM [R] or [D]? Rを入力
実行結果

Please choose the packaging method you want to use.
Slackware [S], RPM [R] or Debian [D]? R

**********************************************************************

Done. The new package has been saved to

/usr/src/redhat/RPMS/i386/ruby-1.8.7-p160-1.i386.rpm
You can install it in your system anytime using:

rpm -i ruby-1.8.7-p160-1.i386.rpm

**********************************************************************

インストール


作成された RPM ファイルを、rpm コマンドでインストールする。
# rpm -Uvh /usr/src/redhat/RPMS/i386/ruby-1.8.7-p160-1.i386.rpm
実行結果
準備中... ########################################### [100%]
1:ruby-1.8.7 ########################################### [100%]

(移動)

# cd ../

バージョンの確認

# ruby -v
実行結果
ruby 1.8.7 (2009-04-08 patchlevel 160) [i686-linux]

インストールパスの確認

# which ruby
実行結果
/usr/bin/ruby

内容の確認

# yum list *ruby*
実行結果

Installed Packages
ruby-1.8.7.i386 p160-1 installed

RubyGemsのインストール


RubyGemsソースの取得

# wget http://rubyforge.org/frs/download.php/55066/rubygems-1.3.2.tgz
実行結果

Saving to: `rubygems-1.3.2.tgz'

100%[=======================================>] 288,798 85.3K/s in 3.3s

16:27:03 (85.3 KB/s) - `rubygems-1.3.2.tgz' を保存しました [288798/288798]

展開

# tar xzvf rubygems-1.3.2.tgz

移動

# cd rubygems-1.3.2

cheinstallの実行

# /usr/sbin/checkinstall -R "ruby setup.rb"
Enter a number to change any of them or press ENTER to cintinue :11
>> ruby-1.8.7
10ではなく11を指定。
パッケージの依存に、上で作成したRPMパッケージを指定。

インストール

# rpm -Uvh /usr/src/redhat/RPMS/i386/rubygems-1.3.2-1.i386.rpm
実行結果

準備中... ########################################### [100%]
1:rubygems ########################################### [100%]

(移動)

# cd ../

バージョンの確認

# gem -v

実行結果
1.3.2

インストールパスの確認

# which gem

実行結果
/usr/bin/gem

内容の確認

# yum list install rubygems

実行結果

Installed Packages
rubygems.i386 1.3.2-1 installed

Railsのインストール



Railsのインストール

# gem install rails
-v オプションでバージョンを指定することもできる。(Ex. # gem install rails -v 2.3.2)
実行結果

Installing ri documentation for rake-0.8.4...
Installing ri documentation for activesupport-2.3.2...
Installing ri documentation for activerecord-2.3.2...
Installing ri documentation for actionpack-2.3.2...
Installing ri documentation for actionmailer-2.3.2...
Installing ri documentation for activeresource-2.3.2...
Installing RDoc documentation for rake-0.8.4...
Installing RDoc documentation for activesupport-2.3.2...
Installing RDoc documentation for activerecord-2.3.2...
Installing RDoc documentation for actionpack-2.3.2...
Installing RDoc documentation for actionmailer-2.3.2...
Installing RDoc documentation for activeresource-2.3.2...

バージョンの確認

# rails -v
実行結果
Rails 2.3.2

インストールパスの確認

# which rails
実行結果
/usr/bin/rails

RMagick のインストール


ImageMagckのインストール

# yum install ImageMagick*
実行結果

Installing : libXau-devel [ 1/19]
Installing : libtiff-devel [ 2/19]
Installing : lcms-devel [ 3/19]
Installing : libjpeg-devel [ 4/19]
Updating : ghostscript [ 5/19]
Installing : ImageMagick-c++ [ 6/19]
Installing : ImageMagick-perl [ 7/19]
Installing : ghostscript-devel [ 8/19]
Installing : xorg-x11-proto-devel [ 9/19]
Installing : libXdmcp-devel [10/19]
Installing : libX11-devel [11/19]
Installing : libXext-devel [12/19]
Installing : libICE-devel [13/19]
Installing : libSM-devel [14/19]
Installing : mesa-libGL-devel [15/19]
Installing : libXt-devel [16/19]
Installing : ImageMagick-devel [17/19]
Installing : ImageMagick-c++-devel [18/19]
Cleanup : ghostscript [19/19]

内容の確認

# yum list *magick*
実行結果

ImageMagick.i386 6.2.8.0-4.el5_1.1 installed
ImageMagick-c++.i386 6.2.8.0-4.el5_1.1 installed
ImageMagick-c++-devel.i386 6.2.8.0-4.el5_1.1 installed
ImageMagick-devel.i386 6.2.8.0-4.el5_1.1 installed
ImageMagick-perl.i386 6.2.8.0-4.el5_1.1 installed

Microsoftフォントの取得

# wget http://www.zacharywhitley.com/linux/rpms/fedora/core/6/i386/msttcorefonts-2.0-1.noarch.rpm
実行結果

Saving to: `msttcorefonts-2.0-1.noarch.rpm'

100%[=======================================>] 3,497,591 262K/s in 15s

17:20:51 (235 KB/s) - `msttcorefonts-2.0-1.noarch.rpm' を保存しました [3497591/3497591]

インストール

# rpm -ivh msttcorefonts-2.0-1.noarch.rpm
実行結果
準備中... ########################################### [100%]
1:msttcorefonts ########################################### [100%]

シンボリックリンクの作成

# ln -s /usr/share/fonts/msttcorefonts /usr/share/fonts/default/TrueType

RMagick のインストール

# gem install rmagick -v 1.15.14
実行結果
Building native extensions. This could take a while...
Successfully installed rmagick-1.15.14
1 gem installed


MySQLのインストール


MySQLサーバーのインストール

# yum -y install mysql-server
実行結果

Installing : perl-DBI [1/4]
Installing : mysql [2/4]
Installing : perl-DBD-MySQL [3/4]
Installing : mysql-server [4/4]

MySQLの開発ツールのインストール

# yum install mysql-devel
実行結果

Installing : mysql-devel [1/1]

Complete!

MySQLライブラリのインストール


Rails 2.2をインストールした場合、mysql.rbが削除される問題の対策
# gem install mysql -- --with-mysql-config=/usr/bin/mysql_config
実行結果
Building native extensions. This could take a while...
Successfully installed mysql-2.7
1 gem installed

確認


railsコマンドが通ってプロジェクトが作成されることを確認。


tez5ro at 15:27コメント(0)トラックバック(0)開発Tips  この記事をクリップ!

トラックバックURL

コメントする

名前:
URL:
  情報を記憶: 評価:  顔   星
 
 
 
記事検索
livedoor プロフィール
QRコード
QRコード
  • livedoor Readerに登録
  • RSS
  • livedoor Blog(ブログ)