2011年7月29日金曜日

S3ってなんじゃ?(RUBY SDK鈍行編1 ruby on railsの準備)

今回はS3をruby sdkで使うためにもう少し細かく見ていきます。
はじめに、rubyruby on rails のインストールをEC2にインストールしてみます。

rubyをインストール
まず動作に必要な各種ライブラリをパッケージインストーラでインストールし、rubyは最新をソースからインストールします。
# yum install git gettext-devel gcc rpm-build zlib-devel gcc-c++ openssl openssl-devel httpd-devel libxml-devel←まちがいでしたごめんなさい。正しくは→ libxml2-devel libxslt-devel
....
# cd /usr/local/src 
# wget ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.2-p290.tar.gz
# tar xzvf ruby-1.9.2-p290.tar.gz 
# cd ruby-1.9.2-p290
# ./configure
# make
# make install

次にrailsを動かすためのいくつかのツールをインストールします。

ruby opensslをインストール
# cd /usr/local/src/ruby-1.9.2-p290/ext/openssl
# ruby extconf.rb
# make
# make install

passengerとpasserngerのapacheモジュールをインストール
# gem install passenger
# passenger-install-apache2-module

そしてrailsのインストール
gem install rails

インストールはこれで終了です。

次にrailsのプロジェクトを作ります。
$ cd /var/www/html
$ rails new -J -T myfirstcloud

作成したらpassengerモジュールをロードし、ドキュメントルートをプロジェクトディレクトリにするようにApacheの設定をします。
# vi /etc/httpd/conf/httpd.conf
....
LoadModule passenger_module /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.7/ext/apache2/mod_passenger.so 
PassengerRoot /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.7
PassengerRuby /usr/local/bin/ruby 
....
<VirtualHost *:80>
   ServerAdmin webmaster@dummy-host.example.com
   ServerName ec2-175-41-210-229.ap-northeast-1.compute.amazonaws.com
   ErrorLog logs/ec2-175-41-210-229.ap-northeast-1.compute.amazonaws.com-error_log
   CustomLog logs/ec2-175-41-210-229.ap-northeast-1.compute.amazonaws.com-access_log common
   DocumentRoot /var/www/html/myfirstcloud/public
   RackEnv development
   <Directory /var/www/html/myfirstcloud/public >
       AllowOverride all
       Options -MultiView
   </Directory>
</VirtualHost>
これで設定は完了です。
ブラウザでアクセスしてみます。



RAILSの最初の画面が表示されました。
今日はここまで。続きはWEBで。