2011年6月6日月曜日

Rails 3 & Apache & passenger インストール

インストールフォルダ

 ・OSミラー用データディレクトリ /data

フォルダ準備

# adduser ++++  →  ++++はユーザー名
  # mkdir /data
  # mkdir /data/project → アプリケーション用
  # mkdir /data/db → データベース用
  # chown -R ++++:++++ /data

Rpmforge

rpmforge (0.3.6-1)

# cd /usr/local/src
  # wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el5.rf.i386.rpm
  # rpm -Uhv rpmforge-release-0.5.2-2.el5.rf.i386.rpm
  # vi /etc/yum.repos.d/rpmforge.repo
  enabled = 1
    ↓
  enabled = 0

checkinstall (1.6.0)

# yum --enablerepo=rpmforge install -y checkinstall

rpm-build (4.4.2.3)

# yum install -y rpm-build

Git

git (1.7.5.2)

# yum install git --enablerepo=rpmforge

MySQL

mysql (yumでインストール)

# yum install mysql
  # yum install mysql-server
  # yum install mysql-devel   → bundle install (Gemのインストール)で必要
※rpmでインストールの場合は http://download.softagency.net/mysql/Downloads/MySQL-5.1/ を参考
#  wget 
  ※ MySQL 5.1 ダウンロードページ  http://download.softagency.net/mysql/Downloads/MySQL-5.1/

my.cnf 設定

/etc/my.cnf が無い場合
# cp /usr/share/mysql/my-large.cnf /etc/my.cnf → 上書き(512Mバイト程度のメモリを持ち,MySQL専用となる機械向け )
# vi /etc/my.cnf

[mysqld]
#character set
default-character-set=utf8
skip-character-set-client-handshake
character-set-server = utf8
collation-server = utf8_general_ci
init-connect = SET NAMES utf8
# For Heart Beet
datadir = /data/db

#sql-mode
sql-mode="STRICT_TRANS_TABLES"

[mysqldump]
default-character-set = utf8

MySQL初期設定

# mysql_secure_installation

参考サイト

MySQLのインストールと管理メモ

Rails

gcc (4.1.2)

# yum -y install gcc
# yum -y install gcc-g++
→ ruby の ./configure で使用する

zlib-devel

# yum -y install zlib-devel
  → gem install rails で必要 (rpm生成時に必要. 無いと gem install が出来なくなる)

ruby (1.9.2)

# wget ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.2-p180.tar.gz
  # tar -zxvf ruby-1.9.2-p180.tar.gz
  # cd ruby-1.9.2-p180
  # ./configure
  # make
  # /usr/sbin/checkinstall --fstrans=no
  →
   Should I create a default set of package docs?  [y]: → y
   Slackware [S], RPM [R] or Debian [D]? → R
   Do you want me to list them?  [n]: → n
   Should I exclude them from the package? (Saying yes is a good idea)  [y]: → y

  # rpm -ivh  /usr/src/redhat/RPMS/i386/ruby-1.9.2-p180-1.i386.rpm
  → RPM化したrubyをインストール

rails (3.0.7)

# gem install rails --include-dependencies

Apache

httpd (2.2.3)

# yum install httpd
  # /etc/init.d/httpd start
 →起動を確認

Passenger

※ 先にApacheインストールしておく

openssl

# cd /usr/local/src/ruby-1.9.2-p180/ext/openssl/
  # ruby extconf.rb
  # make
  # make install
[参考サイト] Ruby で openssl を使う(インストール)

passenger (3.0.7)

# gem install passenger
  # passenger-install-apache2-module
   1. The Apache 2 module will be installed for you.
   2. You'll learn how to configure Apache.
   3. You'll learn how to deploy a Ruby on Rails application.
   → 3. を選択
 不足分が表示されるので yum install する

  # 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
   DocumentRoot "/data/project/****/public" → ****はプロジェクト名

Railsアプリケーションを配置

リポジトリより取得

# git clone <複製したいリポジトリのURL> → リポジトリユーザー@リポジトリホスト:リポジトリGitディレクトリフルパス
  # chown -R ++++:++++ /data/project/**** → ****はプロジェクト名

  # cd /data/project/*****
  # bundle install  → Gemfileより必要なRailsプラグインをインストール

スキーマ作成

※ スキーマ作成スクリプトを実行

サービス再起動

# /etc/init.d/httpd restart
  # /etc/init.d/mysqld restart

参考サイト

CentOS 5.5 RPMでruby1.9.2をインストール
CentOS 5.5 で rpm git 環境を作成する
Rails3 インストール
 ・Apacheのインストール方法

0 件のコメント:

コメントを投稿