Redmineインストールメモ

RubyRailsも触ったことがない自分がやってみる、完全自分用、Redmine環境インストールメモ。
といっても、公式Wikiに書いてある内容を、そのまま実行しただけです。

作成環境

自分は邪悪なので、以降はsudoなんてせずに、suしてからrootで作業してます。
またデータベースもメジャーであろう(?)MySQLではなく、PostgreSQLで。

Ruby関連の準備

apt-get install ruby
ruby -v

apt-getでインストール後、Rubyのバージョンを確認。1.8.7らしい。次にgemのインストール。

apt-get install rubygems1.8

で、Railsのインストール。バージョンは2.3.11で。

gem install rails -v=2.3.11

次にRack。バージョンは1.1.1で。

gem install rack -v=1.1.1

あとはrake

apt-get install rake

恐らく国際化サポート?だと思われるi18nもgemで入れておく。

gem install i18n -v=0.4.2

PostgreSQLのインストール

今まで、死ぬほどやってきたので省略。・・・だとあんまりなので、ざっくりコマンドだけ。
さすがにPostgreSQL9系はまだ早いと思われたので、8.4.8を使用。

cd /usr/local/src
wget [postgresql-8.4.8.tar.gzのURI]
tar -zxvf postgresql-8.4.8.tar.gz
cd postgresql-8.4.8
apt-get install libreadline-dev
apt-get install zlib1g-dev
./configure
make & make install
adduser postgres
passwd postgres
chown -R postgres /usr/local/pgsql
su - postgres
/usr/local/pgsql/bin/initdb -E UTF-8 -D /usr/local/pgsql/data

postgres.confやpg_hba.confの設定やその他諸々はggrksで。その後、以下のSQLRedmine用のDBを作成。

CREATE ROLE redmine LOGIN ENCRYPTED PASSWORD '[redmineユーザのパス]' NOINHERIT VALID UNTIL 'infinity';
CREATE DATABASE redmine WITH ENCODING='UTF8' OWNER=redmine;

Redmineのインストール

Redmineのソースを公式から、/usr/local/srcあたりにでもダウンロードしてから

tar -zxvf redmine-1.2.0.tar.gz
mv redmine-1.2.0 /usr/local

次にRedmineのDBへの接続設定を行う。/usr/local/redmine-1.2.0/config/database.yml.example をコピーして、database.ymlにリネームし、これを編集。デフォルトではproductionにmysqlへの設定が入っているので、これを書き換え。

production:
  adapter: postgresql
  database: redmine
  host: localhost
  username: redmine
  password: [PostgreSQLのredmineロールのパス]
  encoding: utf8
  schema_search_path: public

schema_search_pathはpublicで良い。次に

rake generate_session_store

次にDBのmigrateを実行したいが、その前にPostgreSQLのadapterを導入する。
gemでインストールしていくが、この際、PostgreSQLのpg_configとかを見に行くらしいので、事前にPostgreSQLのbinへPATHを通しておくのがミソ。

export PATH=$PATH:/usr/local/pgsql/bin
gem install libdbd-pg-ruby1.8
gem install pg

Rakefileのある場所で、migrateを実行

cd /usr/local/redmine-1.2.0
RAILS_ENV=production rake db:migrate

するとPostgreSQLのデータベースにテーブル等が作成される。次に初期データの導入。

RAILS_ENV=production rake redmine:load_default_data

このとき作成する言語を選択できるので、日本語がお好みでしたら、jaとかを指定しておきます。

adduser redmine
chown -R redmine files log tmp public/plugin_assets
chmod -R 755 files log tmp public/plugin_assets

以上でインストールは終了。WEBrickでテストしてみます。

ruby script/server webrick -e production

起動を確認して、localhost:3000でRedmineの画面がでてくれば、おk。

ApacheのインストールとPassengerの組み込み

Apacheはソースから入れてもいいけど、面倒だったのでapt-getでインストール。

apt-get install apache2
gem install passenger
/var/lib/gems/1.8/bin/passenger-install-apache2-module

実行すると、インストールするに当たって足りないモジュールと、そのインストール方法が表示される。なんという親切設計。

apt-get install libcurl4-openssl-dev
apt-get install libssl-dev
apt-get install apache2-prefork-dev
apt-get install libapr1-dev
apt-get install libaprutil1-dev

その後、再度、passenger-install-apache2-moduleを実行。

/var/lib/gems/1.8/bin/passenger-install-apache2-module

コンパイル&インストールが終了すると、これまたご丁寧に、httpd.conf用の設定内容を表示してくれる。ありがたく、これをhttpd.confに設定します。

LoadModule passenger_module /var/lib/gems/1.8/gems/passenger-3.0.7/ext/apache2/mod_passenger.so
PassengerRoot /var/lib/gems/1.8/gems/passenger-3.0.7
PassengerRuby /usr/bin/ruby1.8


    ServerName www.yourhost.com
    DocumentRoot /usr/local/redmine-1.2.0/public
    
        AllowOverride all
        Options -MultiViews
    

以上で設定は終了。Apacheを再起動。

service apache2 restart

ブラウザからlocalhostを参照し、Redmineの画面が見えていれば、インストール全て終了です。

まとめ

  • はまったのはPostgreSQLのadapterの導入。メッセージ良く読めば、わかる内容だとは思うけど。
  • Redmine(・∀・)イイ!! Tracは結構昔からつかってたけど、正直Redmineには機能が及ばない。
  • ネイティブにサポートしてるSCMにGitがあるのも嬉しい。