本稿では Redmine 2.5 を CentOS/RedHat にインストールする手順について説明します。
インストールする環境/構築要件
本稿では、動作確認 OS に CentOS 6.4 を利用し、Redmine の動作環境要件を下記の通りとして構築します。
- Ruby はバージョン 2.1.2 で動かす
- Apache 2.2 上で Redmine を動かす
- Apache 2.2 は yum でインストールする
- データベースサーバーには MySQL 5.1 を利用する
- MySQL 5.1 は yum でインストールする
また、サーバーの設定では以下を前提とします。
- サーバーのホスト名 : myhost.com
- メールサーバーホスト : localhost
そして、本稿の作業は全て root ユーザーにて実行します。 それではインストールを始めていきます。
1. Apache 2.2 をインストールする
まずは Apache 2.2 をインストールします。 ここでは yum を利用してインストールします。
# yum install httpd
# chkconfig httpd on
1行目 : yum で Apache をインストール
2行目 : OS 再起動時に自動的に Apache が起動するように設定
2. MySQL 5.1 をインストールする
MySQL 5.1 をインストールします。 MySQL も yum を利用してインストールします。 mysql mysql-server mysql-devel の3つのパッケージをインストールします。 mysql-devel は、後に Redmine をインストールする際に必要となるため、予めココでインストールしておきます。
# yum install mysql mysql-server mysql-devel
# chkconfig mysqld on
※もっと最新の MySQL を使いたいということでしたら「CentOS 6 / RHEL 6 に MySQL 5.6 を yum インストールする手順」を参考にすると良いでしょう。
/etc/my.cnf の [mysqld] [mysql] 節にサーバーの文字コード設定を追記します。
[mysqld]
character-set-server=utf8
[mysql]
default-character-set=utf8
MySQL のサービスを開始します。
# service mysqld start
MySQLに付属している mysql_secure_installation コマンドを実行して初期設定を行います。
# mysql_secure_installation
※mysql_secure_installation の詳細については、別稿「MySQL 5.6 をインストールしたら最初に行うセットアップ」などを参考にしてください。
MySQL にログインして、Redmine 用のデータベースとユーザーを作成します。 ここではサンプルとしてデータベース名を「redmine」、新規ユーザー名「redmine」、新規ユーザーのパスワード「redmine」として設定しています。 各自適切に変更し、以下の説明で読み替えてください。
# mysql -u root -p
mysql> CREATE DATABASE redmine charset="utf8";
mysql> GRANT ALL PRIVILEGES ON redmine.* TO redmine@localhost IDENTIFIED BY 'redmine';
3. Ruby 2.1.2 をインストールする
Ruby 2.1.2 をインストールします。 ここでは rbenv + ruby-build を利用してインストールを行います。 本稿ではコマンドだけを記述します、rbenv + ruby-build を利用しての Ruby のインストール手順については別稿をご覧ください。
# yum install git
# cd /opt
# git clone git://github.com/sstephenson/rbenv.git
# echo 'export RBENV_ROOT="/opt/rbenv"' >> /etc/profile
# echo 'export PATH="${RBENV_ROOT}/bin:${PATH}"' >> /etc/profile
# echo 'eval "$(rbenv init -)"' >> /etc/profile
# mkdir /opt/rbenv/plugins
# cd /opt/rbenv/plugins
# git clone git://github.com/sstephenson/ruby-build.git
一度ターミナルを閉じて開き直し、続けて次のコマンド実行します。
# yum install gcc make openssl-devel
# rbenv install 2.1.2
# rbenv global 2.1.2
<参考>
4. Phusion Passenger をインストールする
Apache 上で Ruby on Rails アプリケーションを動かすために Phusion Passenger をインストールします。 passenger-install-apache2-module の実行時に表示される Passenger のインストール先は後の手順で必要となりますので控えておいてください。
更に詳しいインストール手順については別稿をご覧ください。
# gem install passenger
# yum install gcc gcc-c++ libcurl-devel openssl-devel zlib-devel httpd-devel apr-devel apr-util-devel ImageMagick ImageMagick-devel
一度ターミナルを閉じて開き直し、続けて次のコマンド実行します。
# passenger-install-apache2-module
<参考>
5. Redmine 2.5 をインストールする
Redmine をインストールします。 2014年04月現在 Redmine の最新版は 2.5.1 でしたのでそれをインストールします。 Redmine の設置ディレクトリは /opt 配下としました。
Redmine のインストールの前に必要なライブラリをインストールしておきます。 本稿では Redmine が図形描写に利用するフォントとして IPA フォントを、また GEM ライブラリの取得のための bundle をインストールしておきます。
# yum install ipa-pgothic-fonts
# gem install bundle
インストールが終わったら一度ターミナルを閉じて立ち上げなおしてください。
それでは Redmine をインストールしていきます。 まずは Redmine をダウンロードページからダウンロードして展開します。
# yum install wget
# wget http://www.redmine.org/releases/redmine-2.5.1.tar.gz
# tar xzvf redmine-2.5.1.tar.gz
# mv redmine-2.5.1 /opt/
Redmine に MySQL への接続設定を行います。 Redmine フォルダの下の config ディレクトリに database.yml というファイルを作成し、以下を記述します。
production:
adapter: mysql2
database: redmine
host: localhost
username: redmine
password: redmine
encoding: utf8
Redmine の設定を行います。 Redmine フォルダの下の config ディレクトリに configuration.yml というファイルを作成し、以下を記述します。
production:
email_delivery:
delivery_method: :smtp
smtp_settings:
address: "localhost"
port: 25
domain: 'myhost.com'
rmagick_font_path: /usr/share/fonts/ipa-pgothic/ipagp.ttf
インストール後 bundle コマンドにより、必要な GEM をインストールします。
# cd /opt/redmine-2.5.1/
# bundle install --without development test
シークレットトークンの生成を行い、MySQLのデータベースにテーブル等を一式作成します。
# bundle exec rake generate_secret_token
# RAILS_ENV=production bundle exec rake db:migrate
最後に、Apache が Redmine の実行者になるので Redmine のファイルの所有者を apache ユーザーに変更します。
# chown -R apache:apache /opt/redmine-2.5.1
6. Apache を設定する
Apache に passenger と VirtualHost の設定を行います。 /etc/httpd/conf/httpd.conf の末尾に以下の行を追記します。
LoadModule passenger_module /usr/local/rbenv/(中略)/mod_passenger.so
PassengerRoot /usr/local/rbenv/(中略)/gems/passenger-4.0.29
PassengerDefaultRuby /opt/rbenv/versions/2.1.2/bin/ruby
<VirtualHost *:80>
ServerName myhost.com
DocumentRoot /opt/redmine-2.5.1/public
<Directory /opt/redmine-2.5.1/public>
AllowOverride all
Options -MultiViews
</Directory>
</VirtualHost>
Apache の設定を再読込します。
service httpd graceful
※ここで SE Linux が有効になっていると mod_passenger.so が読み込めない場合があります。 SE Linux を無効化するか設定を変更する必要があります。
7. Redmine へアクセスする
上記までの手順で Redmine のインストールが完了し動作が開始しています。 あなたのサーバー http://myhost.com/ にアクセスしてみてください。 Redmine の画面が表示されましたか? (iptables や SELinux によりアクセスが遮断されないようにお気をつけを。)
更新履歴
- 2014年04月03日 – 初版を投稿しました。
- 2014年08月01日 – Ruby 2.1.2 を利用するように修正しました。
- 2014年10月27日 – 記事中の分かりづらい文章を訂正しました。