Debian (lenny) に Redmine 1.0.1 インストール

以前の「Debian (etch) + Redmine 0.7.3」 とは若干手順がかわる。
http://d.hatena.ne.jp/okinaka/20081202#1228231683

大きなポイントは、

  • rubygems や rake は、パッケージだとバージョンが古い。
    • rubygems は、本家のソースからインストール。
  • rails は、別途インストールが必要(Redmine に同梱されていない)。

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

 aptitude install apache2 postgresql
 aptitude install ruby rdoc libpgsql-ruby1.8
 aptitude install apache2-dev ruby1.8-dev build-essential 

rubygems のインストール

rubygems 本体をインストール。

 wget http://rubyforge.org/frs/download.php/70696/rubygems-1.3.7.tgz
 tar xzf rubygems-1.3.7.tgz
 cd rubygems-1.3.7
 ruby setup.rb

rubygemsrails をインストール。

gem1.8 install rails -v=2.3.5
gem1.8 install rack -v=1.0.1

PostgreSQL の設定

データベースとアカウントを作成する。

  su - postgres
  createuser -P redmine
  createdb -E utf8 -O redmine redmine
  exit

Redmine のインストール

 wget http://rubyforge.org/frs/download.php/72201/redmine-1.0.1.tar.gz
 tar xzf redmine-1.0.1.tar.gz
 mv redmine-1.0.1 /var/lib/redmine
 cd /var/lib/redmine

config/settings.yml を編集。mail_from や host_name など、管理画面で変更できない部分を事前に設定しておく。設定は、データベース初期化後に settings テーブルに格納される。

mail_from:
  default: redmine@example.com

host_name:
  default: example.com

config/database.yml を作成。

 cp config/database.yml{.example,}
 vi config/database.yml

config/database.yml を編集。

production:
  adapter: postgresql
  database: redmine
  host: localhost
  username: redmine
  password: パスワード
  encoding: utf8

セッション用秘密鍵の生成。

 rake generate_session_store

データベースの初期化を実行。

 RAILS_ENV=production rake db:migrate 
 RAILS_ENV=production rake redmine:load_default_data 

メール送信の設定のために config/email.yml を作成する。

 cp config/email.yml{.example,}
 vi config/email.yml

config.yml を編集。メールサーバはローカルを指定。

production:
  delivery_method: :smtp
  smtp_settings:
    address: localhost
    port: 25

redmine の所有者を www-data に変更

  chown -R www-data:www-data /var/lib/redmine

Passenger のインストール

 gem1.8 install passenger
 cd /usr/lib/ruby/gems/1.8/gems/passenger-2.2.15/bin
 ruby passenger-install-apache2-module

Apache の設定

/etc/apache2/mods-available/passenger.load を作成。

LoadModule passenger_module /urs/lib/ruby/gems/1.8/gems/passenger-2.2.15/ext/apache2/mod_passenger.so
PassengerRoot /usr/lib/ruby/gems/1.8/gems/passenger-2.2.15
PassengerRuby /usr/bin/ruby1.8

設定を有効にする。

 a2enmod passenger

DorumentRoot を /var/lib/redmine/public を指定する。

apache の再起動。

 /etc/init.d/apache2 restart

CRON の設定

/etc/cron.d/redmine を作成。

30 2 * * * root find /var/lib/redmine/tmp/sessions -name "ruby_sess*" -mtime +3 -delete

logrotate の設定

/etc/logrotate.d/redmine を作成。

/var/lib/redmine/log/*log {
	missingok
	notifempty
	copytruncate
}