Ubuntu Server+PostgreSQLでredmine1.2がひとまず動くまでのメモ

テスト環境:

  • Ubuntu 10.04 LTS + postgres 8.4
  • Ubuntu 11.10 + postgres 9.1

最初は公式の説明どおりにやったものの案の定はまった。一応WEBrickで動くまでにこぎ着けたので記録する。
手順を間違えてるかもしれないので安全性等の保証はしません。


まずはrvm入れる。手順は以前の記事を参照のこと。

RedmineはまだRuby1.9系に対応してないそうなので1.8.7を導入する。rubygemsも最近のバージョンだとこけるとかいう話なのでダウングレードする。

% rvm install 1.8.7
% rvm 1.8.7 --default
% gem update --system 1.3.7

使うgemを入れる。公式のCompatibility notesに記載されていたバージョンを指定。
ついでにRedClothも入れる(wiki編集時にtextile形式が使えるらしい)

% gem install rake -v=0.8.7
% gem install rack -v=1.1.1
% gem install i18n -v=0.4.2
% gem install rails -v=2.3.11
% gem install RedCloth

gem listしたらなぜかrakeのバージョンが混在していたのでgem uninstall rake -v=0.9.2する。

redmineユーザを作成。

% sudo adduser redmine

(postgres上の)スーパーユーザでpsqlに入ってロールとデータベースを作成する。

# CREATE ROLE redmine LOGIN ENCRYPTED PASSWORD '***CHANGE THIS***' NOINHERIT VALID UNTIL 'infinity';
# CREATE DATABASE redmine WITH ENCODING='UTF8' OWNER=redmine;

適当なディレクトリに移り、Redmine 1.2-stableをチェックアウトする。svnが無ければapt-get install subversionでインストールする。

% cd /path/to/
% svn co http://redmine.rubyforge.org/svn/branches/1.2-stable redmine

config/database.yml.exampleからコピーし、config/database.ymlを編集する。

 production:
   adapter: postgresql
   database: redmine
   host: localhost
   username: redmine
   password: ***CHANGE THIS***
   encoding: utf8
 development:
   adapter: postgresql
(略)

developmentの方のadapterがmysqlのままだとアダプタをインストールしろと怒られるので、こっちも一応postgresqlに書き換えておく。

セッションストアの設定をする。

% cd /path/to/redmine
% rake generate_session_store

redmineデータベースの作成をするが、その前にpostgresのアダプタが必要であり、それはさらにlibpq-fe.hを必要とするのでまとめてインストールする。

% sudo apt-get install libpq-dev
% gem install pg
% RAILS_ENV=production rake db:migrate
; デフォルト設定データを読み込む
% RAILS_ENV=production rake redmine:load_default_data

言語の選択プロンプトが出るのでjaを選択。

パーミッションの設定。

% mkdir tmp/pids
% sudo chown -R redmine:redmine files log tmp public/plugin_assets
% sudo chmod -R 755 files log tmp public/plugin_assets

WEBrickを用いてWebサーバを起動する。ブラウザで当該サーバの3000番ポートにアクセスしてRedmineのホーム画面が表示されることを確認する。

% ruby script/server webrick -e production