Hatena::ブログ(Diary)

130単位

2011-06-05

Amazon Linux RVM/Ruby1.9/Apache2/Passenger3環境構築

環境

Rails3.0.7を動かすサーバーを想定して、割と汎用的なAMIの作成を目指します。

各種パッケージ

以下rootユーザーにスイッチしての作業手順です(sudoだとRVMインストール時につまづきました)。

sudo su -
#アップデート
yum -y update

#Git
yum -y install git

#for Passenger
yum -y install gcc-c++ curl-devel openssl-devel zlib-devel httpd-devel apr-devel

#for RVM
yum install -y gcc-c++ patch readline readline-devel zlib zlib-devel libyaml-devel libffi-devel openssl-devel
yum install -y make bzip2
  • rvm notes で以下のように書いてあるのですがパッケージが存在しません

yum install -y iconv-devel # NOTE: For centos 5.4 final iconv-devel might not be available :(

Apache(+SSLモジュール)

yum -y install httpd
yum -y install mod_ssl
chkconfig httpd on
  • /etc/httpd/conf/http.confのNameVirtualHost *:80を有効化
  • /etc/httpd/conf.d/ssl.confのVirtualHostディレクティブをコメントアウト

RVM

bash < <(curl -s https://rvm.beginrescueend.com/install/rvm)
echo '[[ -s "/usr/local/rvm/scripts/rvm" ]] && . "/usr/local/rvm/scripts/rvm" # Load RVM function' >> /etc/bashrc
source /etc/bashrc

Ruby

rvm install 1.9.2
rvm use 1.9.2 --default

Passenger

gem install passenger --no-ri --no-rdoc
rvmsudo passenger-install-apache2-module
  • 依存関係で最新版のRakeインストールされる
    • Rails側で0.9未満を条件にしているなら事前にRake0.8.7を入れておくといいかも*1
vim /etc/httpd/conf.d/passenger.conf
LoadModule passenger_module /usr/local/rvm/gems/ruby-1.9.2-p180/gems/passenger-3.0.7/ext/apache2/mod_passenger.so
PassengerRoot /usr/local/rvm/gems/ruby-1.9.2-p180/gems/passenger-3.0.7
PassengerRuby /usr/local/rvm/wrappers/ruby-1.9.2-p180/ruby

Bundler

gem install bundler --no-ri --no-rdoc

タイムゾーン

ln -sf /usr/share/zoneinfo/Japan /etc/localtime
ntpdate ntp.bbtec.net
  • 日本にして時刻合わせ

以上で、一度再起動してchkconfigの自動起動を確認したのち、不要なログを削除してAMI作成するといいと思います。


おまけ

for MySQL
yum -y install mysql-devel
for RMagick (Paperclip)
yum -y install ImageMagick-devel

4844329804
Amazon Web Services ガイドブック クラウドでWebサービスを作ろう!

4774146633
Ruby on Rails 3 アプリケーションプログラミング

関連記事

*1:合わせることでbundle exec rakeとしなくてもよくなる

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証