トップ   編集 凍結解除 差分 バックアップ 添付 複製 名前変更 リロード   一覧 最終更新   ヘルプ   最終更新のRSS
 


動作確認ディストリビューション

Redmine 0.8.5のインストール

前提としてApache、MySQLが既にインストール済みの環境があることとします。

事前にRedmine用のMySQLのデータベースを作成する

# mysql -u root -p
Enter password:
mysql> create database redmine;
mysql> flush privileges;

続いて、Redmine用ユーザーを作成する。

mysql> grant all on redmine.* to redmine@localhost identified by 'Redmine用ユーザーのパスワードを入力';
mysql> flush privileges;

ruby関連をインストール

# yum -y install ruby ruby-devel ruby-docs ruby-irb ruby-libs ruby-rdoc

rubyがインストールされた事を確認

# ruby -v
ruby 1.8.5 (2006-08-25) [i386-linux]

RubyGemsのインストール

# cd /usr/local/src
# wget http://rubyforge.org/frs/download.php/60718/rubygems-1.3.5.tgz
# tar zxvf rubygems-1.3.5.tgz
# cd rubygems-1.3.5
# ruby setup.rb config
# ruby setup.rb setup
# ruby setup.rb install

RubyGemsがインストールされた事を確認

# gem -v
1.3.5

Ruby on Railsのインストール

# gem install rails --include-dependencies

Redmineをダウンロード

# cd /usr/local/src
wget http://rubyforge.org/frs/download.php/63583/redmine-0.8.5.tar.gz

ファイル群を展開

# cd /usr/local/
# tar zxvf src/redmine-0.8.5.tar.gz
# mv redmine-0.8.5 redmine

DBの設定ファイルを修正

# cd redmine
# cp config/database.yml.example config/database.yml
# vi config/database.yml

修正前
production:
  adapter: mysql
  database: redmine
  host: localhost
  username: root
  password:
  encoding: utf8

development:
  adapter: mysql
  database: redmine_development
  host: localhost
  username: root
  password:
  encoding: utf8

test:
  adapter: mysql
  database: redmine_test
  host: localhost
  username: root
  password:
  encoding: utf8

↓↓↓↓↓↓↓↓↓

修正後
production:
  adapter: mysql
  database: redmine(事前に作成しておいたRedmine用データベース名)
  host: localhost
  username: redmine(事前に作成しておいたRedmine用ユーザー名)
  password: 事前に作成しておいたRedmine用ユーザーのパスワード
  encoding: utf8

development:
  adapter: mysql
  database: redmine(事前に作成しておいたRedmine用データベース名)
  host: localhost
  username: redmine(事前に作成しておいたRedmine用ユーザー名)
  password: 事前に作成しておいたRedmine用ユーザーのパスワード
  encoding: utf8

test:
  adapter: mysql
  database: redmine(事前に作成しておいたRedmine用データベース名)
  host: localhost
  username: redmine(事前に作成しておいたRedmine用ユーザー名)
  password: 事前に作成しておいたRedmine用ユーザーのパスワード
  encoding: utf8

まずは、WEBRickで起動できるか確認

# rake db:migrate RAILS_ENV=production
# script/server -e production

「http://インストールしたサーバーのURL:3000/」にアクセスし、画面が正しく表示されれば「Ctrl」+「c」でWEBRickを停止。

ApacheでRedmineを起動させるためにpassengerをインストール

# gem install passenger
# passenger-install-apache2-module
Welcome to the Phusion Passenger Apache 2 module installer, v2.2.5.

This installer will guide you through the entire installation process. It
shouldn't take more than 3 minutes in total.

Here's what you can expect from the installation process:

 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.

Don't worry if anything goes wrong. This installer will advise you on how to
solve any problems.

Press Enter to continue, or Ctrl-C to abort. <=エンター押下


--------------------------------------------

Checking for required software...

 * GNU C++ compiler... found at /usr/bin/g++
 * Ruby development headers... found
 * OpenSSL support for Ruby... found
 * RubyGems... found
 * Rake... found at /usr/bin/rake
 * Apache 2... found at /usr/sbin/httpd
 * Apache 2 development headers... found at /usr/sbin/apxs
 * fastthread... found
 * Apache Portable Runtime (APR) development headers... found at /usr/bin/apr-1-config
 * Apache Portable Runtime Utility (APU) development headers... found at /usr/bin/apu-1-config

--------------------------------------------
Compiling and installing Apache 2 module...

・
・
省略
・
・

--------------------------------------------
The Apache 2 module was successfully installed.

Please edit your Apache configuration file, and add these lines:

   LoadModule passenger_module /usr/lib/ruby/gems/1.8/gems/passenger-2.2.5/ext/apache2/mod_passenger.so
   PassengerRoot /usr/lib/ruby/gems/1.8/gems/passenger-2.2.5
   PassengerRuby /usr/bin/ruby

After you restart Apache, you are ready to deploy any number of Ruby on Rails
applications on Apache, without any further Ruby on Rails-specific
configuration!

Press ENTER to continue. <=エンター押下

--------------------------------------------
Deploying a Ruby on Rails application: an example

Suppose you have a Ruby on Rails application in /somewhere. Add a virtual host
to your Apache configuration file, and set its DocumentRoot to
/somewhere/public, like this:

   <VirtualHost *:80>
      ServerName www.yourhost.com
      DocumentRoot /somewhere/public    # <-- be sure to point to 'public'!
   </VirtualHost>

And that's it! You may also want to check the Users Guide for security and
optimization tips and other useful information:

  /usr/lib/ruby/gems/1.8/gems/passenger-2.2.5/doc/Users guide Apache.html

Enjoy Phusion Passenger, a product of Phusion (www.phusion.nl) :-)
http://www.modrails.com/

Phusion Passenger is a trademark of Hongli Lai & Ninh Bui.

所有者をApacheの実行ユーザーに変更

Apacheの実行ユーザー、実行グループを確認
# cat /etc/httpd/conf/httpd.conf|grep -E '^User |^Group '
User apache
Group apache
所有者を変更
# chown -R apache.apache /usr/local/redmine

不要になったRedmineのソースファイルを削除

# rm -f /usr/local/src/redmine-0.8.5.tar.gz

Apacheの設定ファイルを作成(ApacheをRPMからインストールした場合の例)

# vi /etc/httpd/conf.d/passenger.conf
LoadModule passenger_module /usr/lib/ruby/gems/1.8/gems/passenger-2.2.5/ext/apache2/mod_passenger.so
PassengerRoot /usr/lib/ruby/gems/1.8/gems/passenger-2.2.5
PassengerRuby /usr/bin/ruby
# vi /etc/httpd/conf.d/redmine.conf

Alias /redmine "/usr/local/redmine/public"
<Directory "/usr/local/redmine/public">
    Options -Indexes
    AllowOverride All
</Directory>

Apacheの再起動

# service httpd restart

RORの起点となるスクリプトを準備

# cd /usr/local/redmine/public/
# cp dispatch.cgi.example dispatch.cgi

「.htaccess」に以下のような記述があり、今回はエイリアスにて運用するため、「.htaccess」を修正する

# If your Rails application is accessed via an Alias directive,
# then you MUST also set the RewriteBase in this htaccess file.
#
# Example:
#   Alias /myrailsapp /path/to/myrailsapp/public
#   RewriteBase /myrailsapp
# cd /usr/local/redmine/public/
# vi .htaccess

RewriteBase /redmine <=上記のサンプルが記述されている直下に追記する

「http://インストールしたサーバーのURL/redmine/」にアクセスすると、ホーム画面が表示されます。

Redmineログイン画面(http://インストールしたサーバーのURL/redmine/login)へアクセスし、ログイン確認を行う。

ログイン:admin
パスワード:admin

「My account」=>「Language」にて「Japanese(日本語)」を選択し「Save」をクリックすることで日本語化されます。



今回はエイリアス運用にて環境を構築してみましたが、とにかく動作が重くて使い物になりませんでした。
もちろん、VMWareの環境で構築した事が一部原因として考えられますが、「.htaccess」のファイル内に以下のような気になる記述があります。

# Redirect all requests not available on the filesystem to Rails
# By default the cgi dispatcher is used which is very slow
#
# For better performance replace the dispatcher with the fastcgi one

デフォルトで動作するCGIはとにかく遅いので、よいパフォーマンスを得るには「FastCGI」を利用しろ。との事。
で、試しにエイリアス運用ではなくドキュメントルートでの運用を試してみた(会社で利用しているRedmineはドキュメントルート運用で問題ないレスポンスで動作してたので)ところ、とたんに動作が軽くなりました。
この際は、「dispatch.cgiの準備」や「.htaccessへのRewriteBaseの追記」は不要なので、上記の「dispatcherが云々」とは無縁となり、レスポンスが向上するようです。
よく調査してないので、何とも言えませんが「dispatcher」の仕組みが速度に如実に影響を与える事は間違いないようです。


Last-modified: 2013-03-22 (金) 16:49:51 (1889d)