2009年05月01日
CentOS 5.3に、Rails 2.3 をインストールしてみる
ここのところRuby On Railsの環境の構築を模索しています。
目標として、
これらを考慮すると、
といった組み合わせが思い浮かびました。
当初、この構成において、IDEは開発用クライアントマシン(Windows)にインストールし、Rubyの実行環境は仮想マシンを利用するのがスマート、オレ天才、などと浮かれていましたが、IDEの設定においてRubyのインストールパスを仮想マシンにマッピングすることが出来ない、という事に気が付き…orz
仕方がないので、パフォーマンスに問題がありますが、IDEは仮想マシンに直接乗せてしまう、という前提で作業を行いました。
ディストリビューションはCentOSをチョイスしました。CentOSはきれいなデスクトップ環境もありますし、当然、アプリケーションサーバーとしてもあり得る選択です。開発から本番まで全部揃えるには向いているかもしれません。
以下はCentOS5.3にRails2.3をインストールしてみた際のログです。
目標として、
- 開発環境から本番環境まで極力環境を揃えたい。
- なるべくなら最新バージョンのRailsを扱いたい。
- 開発においては全面的にIDE(統合開発環境)を用いてラクしたい。
- 各レイヤ(Rails,Rubyなど)のバージョンアップにあまり手間をかけずに対応したい。
これらを考慮すると、
- 開発環境:VMware上の仮想Linuxマシン
- テスト環境:VMware上の仮想Linuxマシン
- 本番環境:Linuxサーバー
といった組み合わせが思い浮かびました。
当初、この構成において、IDEは開発用クライアントマシン(Windows)にインストールし、Rubyの実行環境は仮想マシンを利用するのがスマート、オレ天才、などと浮かれていましたが、IDEの設定においてRubyのインストールパスを仮想マシンにマッピングすることが出来ない、という事に気が付き…orz
仕方がないので、パフォーマンスに問題がありますが、IDEは仮想マシンに直接乗せてしまう、という前提で作業を行いました。
ディストリビューションはCentOSをチョイスしました。CentOSはきれいなデスクトップ環境もありますし、当然、アプリケーションサーバーとしてもあり得る選択です。開発から本番まで全部揃えるには向いているかもしれません。
以下はCentOS5.3にRails2.3をインストールしてみた際のログです。
参考:
インストールにあたっては以下のサイトをありがたく参考にさせていただきました。詳しい内容はこちらでご確認ください。
- Design Recipe 別館 Blog - Cent OS 5.2 への Ruby On Rails 環境のインストール
- 僕は木になりたい。。。 : Rails2.2 で db:migrate でハマる。
構築環境:
- 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"10ではなく11を指定。
Enter a number to change any of them or press ENTER to cintinue :11
>> ruby-1.8.7
パッケージの依存に、上で作成した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コマンドが通ってプロジェクトが作成されることを確認。
