Ruby on Rails をApacheに組み込む「passenger_module」
Passenger (mod_rails for Apache)
Ruby on Rails を Apache2 で動かすモジュールが公開されたそうです。これは吉報かも。
インストールメモ(せっかちな人向け)
Ubuntu-7.10
sudo apt-get upgrade sudo apt-get install gcc make libc6-dev build-essential subversion ruby-full apache2 apache2-prefork-dev libapr1-dev sqlite3 libsqlite3-dev sudo a2enmod rewrite wget http://rubyforge.org/frs/download.php/35283/rubygems-1.1.1.tgz tar xzvf rubygems-1.1.1.tgz cd rubygems-1.1.1/ sudo ruby setup.rb sudo ln -s /usr/bin/gem1.8 /usr/bin/gem cd .. rm -rf rubygems-1.1.1.tgz rubygems-1.1.1 sudo gem install rake passenger sqlite3-ruby --no-rdoc --no-ri sudo passenger-install-apache2-module sudo vi /etc/apache2/mods-available/passenger.load -------------------------------------------------------------------------------- LoadModule passenger_module /usr/lib/ruby/gems/1.8/gems/passenger-1.0.1/ext/apache2/mod_passenger.so RailsSpawnServer /usr/lib/ruby/gems/1.8/gems/passenger-1.0.1/bin/passenger-spawn-server RailsRuby /usr/bin/ruby -------------------------------------------------------------------------------- sudo a2enmod passenger sudo mkdir /webapps sudo chown syttru.syttru /webapps/ cd /webapps/ svn checkout http://redmine.rubyforge.org/svn/trunk/ redmine cd redmine cp config/database.yml.example config/database.yml rake db:migrate RAILS_ENV=demo sudo vi /etc/apache2/sites-available/redmine -------------------------------------------------------------------------------- <VirtualHost *> ServerName redmine.syttru.com DocumentRoot /webapps/redmine/public <Directory /webapps/redmine/public> AllowOverride All Options All </Directory> RailsEnv demo </VirtualHost> -------------------------------------------------------------------------------- sudo a2ensite redmine sudo /etc/init.d/apache2 restart
ローカルPCの c:\WINDOWS\system32\drivers\etc\hosts に以下の一行を足してごまかして
192.168.145.132 redmine.syttru.com
ブラウザで http://redmine.syttru.com/ を開く
せっかちじゃない人向け
いろいろインストール
sudo apt-get upgrade sudo apt-get install gcc make libc6-dev build-essential subversion
Rubyをインストール
sudo apt-get install ruby-full
Gemをインストール
wget http://rubyforge.org/frs/download.php/35283/rubygems-1.1.1.tgz tar xzvf rubygems-1.1.1.tgz cd rubygems-1.1.1/ sudo ruby setup.rb sudo ln -s /usr/bin/gem1.8 /usr/bin/gem cd .. rm -rf rubygems-1.1.1.tgz rubygems-1.1.1
Apacheをインストール
sudo apt-get install apache2 apache2-prefork-dev libapr1-dev
mod_rewriteを有効にする
sudo a2enmod rewrite
ここからPassengerのインストール
sudo gem install passenger sudo passenger-install-apache2-module
Apacheの設定ファイルを書いて
sudo vi /etc/apache2/mods-available/passenger.load
LoadModule passenger_module /usr/lib/ruby/gems/1.8/gems/passenger-1.0.1/ext/apache2/mod_passenger.so RailsSpawnServer /usr/lib/ruby/gems/1.8/gems/passenger-1.0.1/bin/passenger-spawn-server RailsRuby /usr/bin/ruby
有効にする
sudo a2enmod passenger
SQLiteデータベースをインストール
sudo apt-get install sqlite3 libsqlite3-dev sudo gem install sqlite3-ruby
Redmineをチェックアウトしてくる
sudo mkdir /webapps sudo chown syttru.syttru /webapps/ cd /webapps/ svn checkout http://redmine.rubyforge.org/svn/trunk/ redmine
データベースの設定。
「production」環境だとMySQLに繋ぐみたいでした。面倒くさいので「demo」環境で設定します。
cd redmine cp config/database.yml.example config/database.yml rake db:migrate RAILS_ENV=demo
Apacheの設定ファイルに書いて
sudo vi /etc/apache2/sites-available/redmine -------------------------------------------------------------------------------- <VirtualHost *> ServerName redmine.syttru.com DocumentRoot /webapps/redmine/public <Directory /webapps/redmine/public> AllowOverride All Options All </Directory> RailsEnv demo </VirtualHost> --------------------------------------------------------------------------------
有効にする。
sudo a2ensite redmine
Apacheを再起動
sudo /etc/init.d/apache2 restart
ローカルPCの c:\WINDOWS\system32\drivers\etc\hosts に以下の一行を足してごかまして
192.168.145.132 redmine.syttru.com
ブラウザで http://redmine.syttru.com/ を開く
動いた。やったー!!!
思ったこと
眠い… 目が開かない… また鬼太郎見れない…
おやすみなさい Zzz...