Hatena::ブログ(Diary)

電脳戦士ハラキリ -SE道とは死ぬ事と見つけたり- このページをアンテナに追加 RSSフィード

JavaScriptやKinect, OpenNI, iOSについて。Twitterは@hagino3000
SIerで兵隊(スーツ着て客先常駐)をやっていた時期が私にもありました……。

2009-01-12

LinodeにCentOSでRails環境構築

海外の格安vpsレンタルサーバSlicehostLinode、両方借りて試しましたがLinodeを使って行くことにしました。Slicehostアーキテクチャがx86_64固定に対してLinodeは自由に選べるのでrpm厨に優しいです。

以下、Linode上のCentOSへのRailsインストール手順

環境チェック

[root@hogehoge ~]# uname -s
Linux
[root@hogehoge ~]# uname -r
2.6.18.8-linode10
[root@hogehoge ~]# uname -v
#2 SMP Sat Jul 19 20:24:32 EDT 2008
[root@hogehoge ~]# uname -m
i686
[root@hogehoge ~]# uname -p
i686
[root@hogehoge ~]# uname -i
i386
[root@hogehoge ~]# uname -o
GNU/Linux

必要なものをインストール

cd /tmp
yum -y install gcc
yum -y install compat-gcc*
yum -y install compat-iib*
yum -y install zlib-devel
yum -y install rpm-build
yum -y install sqlite sqlite-devel
yum -y install mysql
yum -y install mysql-server
yum -y install openssl-devel

rpmforgeをyumリポジトリに追加

checkinstallはrpmforgeから取得しないといけないので、rpmforgeをyumリポジトリに追加。rpmforgeからcheckinstallをインストール。

cd /tmp
wget http://dag.wieers.com/rpm/packages/rpmforge-release/rpmforge-release-0.3.6-1.el5.rf.i386.rpm
rpm -Uvh rpmforge-release-0.3.6-1.el5.rf.i386.rpm
sed -i 's/enabled = 1/enabled = 0/g' /etc/yum.repos.d/rpmforge.repo
wget http://dag.wieers.com/packages/RPM-GPG-KEY.dag.txt
rpm --import RPM-GPG-KEY.dag.txt
yum --enablerepo=rpmforge -y install checkinstall 

rubyRPM化してインストール

yumから取得できるrubyは1.8.5と古いので、ソースからインストールする。

cd /tmp
wget ftp://ftp.idaemons.org/pub/mirror/ftp.ruby-lang.org/ruby/1.8/ruby-1.8.7-p72.tar.gz
tar xzvf ruby-1.8.7-p72.tar.gz
cd ruby-1.8.7-p72
./configure --prefix=/usr
make
checkinstall --fstrans=no
rpm -ihv --nomd5 /usr/src/redhat/RPMS/i386/ruby-1.8.7-p72-1.i386.rpm

確認

[root@hogehoge]# ruby -v
ruby 1.8.7 (2008-08-11 patchlevel 72) [i686-linux]

gemのインストール

なんかもうめんどくさくなったのでRPM化しない。

cd /tmp
wget http://rubyforge.org/frs/download.php/45905/rubygems-1.3.1.tgz
tar xvzf rubygems-1.3.1.tgz
cd rubygems-1.3.1
ruby setup.rb

確認

[root@hogehoge]# gem -v
1.3.1

railsのインストール

cd /tmp
gem install rails --include-dependencies    

確認

[root@hogehoge]# rails -v
Rails 2.2.2

ネットワーク設定

iptablesを設定してport:3000を開けたりする。

これを参考にしてiptables.shを作成して実行、3000番を解放する。

この手順に気づくのに丸一日かかりました……orz。今までまともにLinuxサーバー構築やったことがなかったのでiptablesも知らなかったし。

接続テスト

cd /var/local/
mkdir railstest
cd railstest

# テスト用にhelloというアプリを作成
rails hello
cd hello

# tmpとlogディレクトリのパーミッション変更
chmod 777 tmp
chmod 777 log

# weblick起動
ruby script/server

ブラウザでmylinodeのアドレスにアクセスしてrailsの初期画面が見れたらOK。

ここより参考になるページ

hagino_3000hagino_3000 2009/02/06 05:05 mysql-serverのインストールが抜けていたので追記しました。(自分が嵌った)

はてなユーザーのみコメントできます。はてなへログインもしくは新規登録をおこなってください。

トラックバック - http://d.hatena.ne.jp/hagino_3000/20090112/1231736099