« 余ったFMV-BIBLOをPuppyマシンにする | メイン | WindowsServer2008R2にOracle10gR2を »
2010年08月08日
CentOS4.4にPassenger
Apache2上にRails実行環境を構築し、以前作った日記のWebアプリ(railsblog)を動かしてみる。
その覚書。
1.CentOS4のRubyは1.8.1なので、まずは1.8.5にする。
# cd /etc/yum.repos.d/
# wget http://dev.centos.org/centos/4/CentOS-Testing.repo
# yum --enablerepo=c4-testing -y install ruby ruby-devel ruby-libs ri ruby-mode irb rdoc
とすると、なぜか「irbが無い」というエラーで止まる。
そこで、先にirbだけ入れる。
# yum --enablerepo=c4-testing -y install irb
# yum --enablerepo=c4-testing install ruby ruby-devel ruby-libs ri ruby-mode irb rdoc
これでRubyは1.8.5に!
2.rubygemsを入れる。
wgetでrubygems-1.1.1.tgzをダウンロードし、tarで展開した後、そこにディレクトリを移動し、
# ruby setup.rb
次に、rubygems-update-1.3.1.gemをwgetでダウンロードした後、
# gem install rubygems-update-1.3.1.gem --local
# update_rubygems
これでrubygemsは、1.3.1になる。
この後、1.3.7にするため
# gem install hoe
# gem update --system
を実行してみるものの、1.3.1のままだ。まぁ、1.3.1で良いや(^^;)。
3.railsのインストール。
railsは2.0.2と2.3.2を入れる(過去の開発資産を生かすため)。
# gem install rails -v=2.0.2
# gem install rails -v=2.3.2
これは、すんなり成功。
4.passengerのインストール。
# gem install passenger
# passenger-install-apache2-module
あれ?C++のコンパイラが無いと怒られる。
# yum install gcc-c++
を実行後、再度
# passenger-install-apache2-module
5.Apacheの設定ファイルを書き換え。
# cd /etc/httpd/conf.d/
ここにmod_rails.confを作成し、設定を書く。
6.MySQLドライバのインストール。
# gem install mysql -- --with-mysql-config=/usr/bin/mysql_config
では、「Rubyのバージョンが1.8.6以上でないとダメ」というエラーになるため、
# gem install mysql -v=2.7 -- --with-mysql-config=/usr/bin/mysql_config
と、古いバージョンを指定する。
7.FTPでRailsアプリをアップロード(ユーザディレクトリへ)。
/home/masatsu/の直下に「railsblog」というプロジェクトフォルダごとアップロードする。
# chown -R nobody:nobody /home/masatsu/railsblog
で所有権を変更しておく(必要なのか?…分からん)。
8.ドキュメントルートにpublicへのシンボリックリンクを張る。
# cd /var/www/html/
# ln -s /home/masatsu/railsblog/public/ railsblog
9.Apacheの設定ファイルを再度、書き換え。
/etc/httpd/conf.d/mod_rails.confを修正する。
----------------------------------------
LoadModule passenger_module /usr/lib/ruby/gems/1.8/gems/passenger2.2.15/ext/apache2/mod_passenger.so
PassengerRoot /usr/lib/ruby/gems/1.8/gems/passenger-2.2.15
PassengerRuby /usr/bin/ruby
RailsBaseURI /railsblog
----------------------------------------
で、Apache再起動。
# service httpd restart
10.Rails設定ファイルの書き換え。
$ mysqladmin -u root -p variables | grep socket
でMySQLのソケットを確認し、database.ymlを修正する。
environment.rbのRails::Initializer.run内に
----------------------------------------
config.action_controller.relative_url_root = '/railsblog' if ENV['RAILS_ENV'] == 'production'
----------------------------------------
を記述する。
11.mysqlクライアントで新しいデータベースを作成後、DBマイグレートを行なう。
# cd /home/masatsu/railsblog
# rake db:migrate RAILS_ENV=production
これでhttp://friction.mars.ddns.vc/railsblog/homeにアクセスすると、実行できました。
オールOK!(落ちは無い(^^;))
投稿者 masatsu : 2010年08月08日 12:33