Redmine 2.3.3のインストール(CentOS 6.4)

f:id:redpanda:20131018162441p:plain

やること

Ruby、および、Railsの実行環境を整え、Passangerを用いてApacheと連携し、
Redmineが利用できる環境を構築する。

前提条件

  • MySQLの動作環境が整っていること
  • Apacheの動作環境が整っていること

環境

  • CentOS 6.4
  • MySQL 5.6.14
  • Apache 2.2.15
  • Ruby 1.9.3p448
  • Gem 1.8.23
  • Rails 3.2.13
  • Redmine 2.3.3

手順

必要なパッケージのインストール

EPELリポジトリの登録

# rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

開発ツール(Cコンパイラ等)

# yum groupinstall "Development Tools"

RubyとPassengerのビルドに必要なヘッダファイルなど

# yum install openssl-devel readline-devel zlib-devel curl-devel libyaml-devel

※MySQL(MySQL-devel)、および、httpd(httpd-devel)は既にインストール済みとする

ImageMagickとヘッダファイル・日本語フォント

# yum install ImageMagick ImageMagick-devel
# yum install ipa-pgothic-fonts

Rubyのインストール

※最新をバージョンを確認しておく。http://www.ruby-lang.org/ja/downloads/

Rubyのビルド

# curl -O ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p448.tar.gz
# tar zxvf ruby-1.9.3-p448.tar.gz
# cd ruby-1.9.3-p448
# ./configure --disable-install-doc
# make
# make install

インストール後の確認

# ruby -v
ruby 1.9.3p448 (2013-06-27 revision 41675) [x86_64-linux]

# gem -v
/usr/local/lib/ruby/1.9.1/yaml.rb:84:in `<top (required)>':
It seems your ruby installation is missing psych (for YAML output).
To eliminate this warning, please install libyaml and reinstall your ruby.
1.8.23

bundlerのインストール

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

データベースの作成

データベース、および、ユーザを設定。
この設定は後の手順でRedmineの設定ファイルに記述する。

# mysql -uroot -p
mysql> create database db_redmine default character set utf8;
mysql> grant all on db_redmine.* to user_redmine identified by 'password';
mysql> flush privileges;
mysql> exit

Redmineのインストール

アーカイブの取得と配置

ここでは配置先を/var/lib/redmineとする。

# wget http://rubyforge.org/frs/download.php/77138/redmine-2.3.3.tar.gz
# tar zxvf redmine-2.3.3.tar.gz
# mv redmine-2.3.3 /var/lib/redmine

データベースへの接続設定

ひな形を元にdatabase.ymlを作成し、下記の通り接続情報を記入する。

# cd /var/lib/redmine
# cp -p config/database.yml.example config/database.yml

(pathToRedmineApp/config/database.yml)

production:
  adapter: mysql2
  database: db_redmine
  host: localhost
  username: user_redmine
  password: "password"
  encoding: utf8

設定ファイル config/configuration.yml の作成

※Redmineからメールサーバへ接続するための設定等を行うがここでは省略。必要な場合は設定する。

Gemパッケージのインストール

※Redmineのインストールディレクトリ配下で実行する。

# bundle install --without development test

MySQL2パッケージのインストール

# gem install mysql2 -v '0.3.13' -- --with-mysql-config=/usr/bin/mysql_config

Redmineの初期設定とデータベースのテーブル作成

# bundle exec rake generate_secret_token
# RAILS_ENV=production bundle exec rake db:migrate

ApacheとPassangerの設定

Passengerのインストール

# gem install passenger --no-rdoc --no-ri
# passenger-install-apache2-module

インストール後、下記コマンドの出力結果を控えておく。

# passenger-install-apache2-module --snippet
LoadModule passenger_module /usr/local/lib/ruby/gems/1.9.1/gems/passenger-4.0.20/buildout/apache2/mod_passenger.so
PassengerRoot /usr/local/lib/ruby/gems/1.9.1/gems/passenger-4.0.20
PassengerDefaultRuby /usr/local/bin/ruby

ApacheとPassangerを連携する設定

下記の内容で/etc/httpd/conf.d/passenger.confを作成する。
※先頭の3行は、先ほどの手順で控えておいた内容を記載する。

(/etc/httpd/conf.d/passenger.conf)

# Passengerの基本設定。
# passenger-install-apache2-module --snippet を実行して表示される設定を使用。
# 環境によって設定値が異なりますので以下の3行はそのまま転記しないでください。
#
LoadModule passenger_module /usr/local/lib/ruby/gems/1.9.1/gems/passenger-4.0.20/buildout/apache2/mod_passenger.so
PassengerRoot /usr/local/lib/ruby/gems/1.9.1/gems/passenger-4.0.20
PassengerDefaultRuby /usr/local/bin/ruby

# Passengerが追加するHTTPヘッダを削除するための設定(任意)。
#
Header always unset "X-Powered-By"
Header always unset "X-Rack-Cache"
Header always unset "X-Content-Digest"
Header always unset "X-Runtime"

# 必要に応じてPassengerのチューニングのための設定を追加(任意)。
# 詳しくはPhusion Passenger users guide(http://www.modrails.com/documentation/Users%20guide%20Apache.html)をご覧ください。
PassengerMaxPoolSize 20
PassengerMaxInstancesPerApp 4
PassengerPoolIdleTime 3600
PassengerHighPerformance on
PassengerStatThrottleRate 10
PassengerSpawnMethod smart
RailsAppSpawnerIdleTime 86400
PassengerMaxPreloaderIdleTime 0

Apache上のPassengerでRedmineを実行するための設定

下記、3パターンあるが、ここでは「パターン2」を手順を利用。

  • パターン1: webサーバをRedmine専用として使用
  • パターン2: サブディレクトリでRedmineを実行
  • パターン3: バーチャルホストでRedmineを実行

パーミッションの設定

# chown -R apache:apache /var/lib/redmine

シンボリックリンクの作成

# ln -s /var/lib/redmine/public /var/www/html/redmine

Apacheへの設定追加
/etc/httpd/conf.d/passenger.confへ下記を追記する。

RackBaseURI /redmine

Apacheの再起動

# service httpd configtest
# service httpd graceful

動作確認

下記にアクセスして、Redmineのログインページが表示されること。

※ログイン:admin/admin

http://hostName/redmine/

ログイン後、「管理」からデフォルト設定をロードして完了。

Redmine 2.3をCentOS 6.4にインストールする手順 | Redmine.JP Blog