Redmine+SVN/Gitの環境構築 (2) | パークのソフトウエア開発者ブログ|ICT技術(Java・Android・iPhone・C・Ruby)なら株式会社パークにお任せください

パークのソフトウエア開発者ブログ|ICT技術(Java・Android・iPhone・C・Ruby)なら株式会社パークにお任せください

開発の解決方法や新しい手法の情報を、パークのエンジニアが提供します。パークのエンジニアが必要な場合は、ぜひお気軽にお問い合わせ下さい。 株式会社パーク:http://www.pa-rk.co.jp/

こんにちは、中村です。
今回はRedmineのインストールまでの手順を書いていこうと思います。
Redmineのバージョンは2012/12/17現時点で最新の、2.1.4を使っていこうと思います。

今回はRedmineをApache上で動かすので、Apache httpdとMySQLをインストールします。
$ sudo yum install httpd httpd-devel mysql-server mysql-devel

MySQLの設定ファイルを編集して、エンコーディングをUTF-8に設定します。
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
character-set-server=utf8  # <- この行を追加

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

[mysql]                    # <- この行を追加
default-character-set=utf8 # <- この行を追加
MySQLを起動して、デフォルト起動もONに設定します。
$ sudo /etc/init.d/mysqld start
$ sudo chkconfig mysqld on

httpdでRailsを動かすので、passengerもインストールします。
passengerのバージョンは最新の3.0.18を使います。
$ rvm use 1.9.3-p327@redmine
$ sudo yum install curl-devel zlib-devel openssl-devel
$ gem install passenger --no-ri --no-rdoc
$ rvmsudo passenger-install-apache2-module

Redmineで使用するMySQLのDBを作成して、ユーザも追加していきます。
DB名やユーザ名、パスワードは任意です。
  $ mysql -uroot
  mysql> create database redmine_db default character set utf8;
  mysql> grant all on redmine_db.* to redmine_user identified by 'redmine';
  mysql> grant all on redmine_db.* to redmine_user@localhost identified by 'redmine';
  mysql> flush privileges;
  mysql> exit;

作業用のディレクトリ作成し、Redmineをダウンロードして展開します。
$ mkdir $HOME/temp
$ cd $HOME/temp
$ curl -o redmine-2.1.4.tar.gz http://files.rubyforge.vm.bytemark.co.uk/redmine/redmine-2.1.4.tar.gz
$ tar zxvf redmine-2.1.4.tar.gz

展開後のディレクトリを移動して、apacheユーザをオーナーに設定します。
$ sudo mv redmine-2.1.4 /var/lib/redmine
$ sudo chown -R apache:apache /var/lib/redmine

RedmineのDB設定ファイルを作成します。
production:
  adapter: mysql2
  database: redmine_db
  host: localhost
  username: redmine_user
  password: redmine
  encoding: utf8
production:
  email_delivery:
    delivery_method: :smtp
    smtp_settings:
      address: "localhost"
      port: 25
      domain: 'example.com'

依存するパッケージのインストール、DBの構築をしていきます。
$ sudo yum install ImageMagick ImageMagick-devel
$ cd /var/lib/redmine
$ rvmsudo bundle install --without development test postgresql
$ rvmsudo rake generate_secret_token
$ rvmsudo rake db:migrate RAILS_ENV=production

passengerの設定ファイルを作成します。
ここでは、httpdをRails以外の用途でも使えるようにしたかったので、VirtualHostでの設定をしています。
ドメイン名は環境に応じて変更してください。
LoadModule passenger_module /home/nakamura/.rvm/gems/ruby-1.9.3-p327@redmine/gems/passenger-3.0.18/ext/apache2/mod_passenger.so
PassengerRoot /home/nakamura/.rvm/gems/ruby-1.9.3-p327@redmine/gems/passenger-3.0.18
PassengerRuby /home/nakamura/.rvm/wrappers/ruby-1.9.3-p327@redmine/ruby

NameVirtualHost *:80
<VirtualHost *:80>
  ServerName redmine.example.com
  DocumentRoot /var/lib/redmine/public
</VirtualHost>

SELinuxを無効に設定します。
この設定がされていないと、httpdの起動時にエラーになってしまいます。
$ setenforce 0
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=disabled # <- enforcing を disabled に修正
# SELINUXTYPE= can take one of these two values:
#     targeted - Targeted processes are protected,
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted

httpdを起動し、デフォルト起動もONに設定します。
(事前にファイアウォールの80番ポートを開けておいてください)
$ sudo /etc/init.d/httpd start
$ sudo chkconfig httpd on

http://redmine.example.comにアクセスして、RedmineのTOPページが表示できているか確認しましょう。
アクセス後、RedmineのHome画面が表示されていればインストール成功です。

最終回の次回は、Redmineにpluginを入れてSVN/Gitと連携する設定をしていきたいと思います。