Fedora13にRedmineをインストールしてみた

Redmineインストール手順の覚書。ただし一部怪しい記述あり。

入門Redmine 第2版 Linux/Windows対応

入門Redmine 第2版 Linux/Windows対応

上記書籍を片手に、詰まったところはネットで調べながらやってみた。
ちなみにRedmine 1.0.3をインストールしたはず。
とりあえず依存しそうなものをインストールしておく。

#yum groupinstall "Development Tools"
#yum install zlib-level openssl-devel

RubyオフィシャルサイトからRuby 1.8.7をダウンロード。
今回はruby-1.8.7-p302.tar.gzを使った。

ファイルの保存場所に移動して解凍、インストール。

$cd 保存場所
$tar zxvf ruby-1.8.7-p302.tar.gz
$cd ruby-1.8.7-p302
$./configure
$make
#make install

ここで、rubyでzlibを読み込むための設定。

$cd ext/zlib
$ ruby extconf.rb --with-zlib-include=/usr/lnclude -with-zlib-lib=/usr/lib
$make
#make install

rubyのバージョンが1.8.7になってたらおk。
次にRubyGemsをダウンロードしてくる。
今回はrubygems-1.3.7.tgzを使用。

$cd 保存場所
$tar zxvf rubygems-1.3.7.tgz
$cd rubygems-1.3.7
# ruby setup.rb

次にrailsのインストール。

#gem install rails -v 2.3.5

rackは1.0.1が必須らしいので、入っていなければインストール

#gem install rack –v 1.0.1

次、MySQL

#yum install mysql mysql-server mysql-devel

文字コード設定の変更。
/etc/my.cnfの[mysqld][mysqld_safe][mysql]に以下の記述を追加。

default-character-set=utf8

MySQLサーバ起動。

#/etc/init.d/mysqld start

パスワード変更と匿名ユーザの削除。

#mysql -uroot mysql
mysql> update user set password=password('変更したいパスワード') where user='root';
mysql> delete from user where user='';
mysql> flush privileges;
mysql> exit;

変更したパスワードで起動できればおk。

#mysql -uroot -p
Enter password:変更後のパスワード
mysql> exit;

Redmine用データベースとユーザの作成。

#mysql -uroot -p
Enter password:パスワード
mysql> create database redmine default character set utf8;
mysql> grant all privileges on redmine.* to redmine identified by 'redmine用として設定したいパスワード';
mysql> exit;

OSブート時に自動起動するように。

#/sbin/chkconfig mysqld on

rubyMySQLにアクセスするためのライブラリをインストール。

#gem install mysql -- --with-mysql-lib=/usr/lib/mysql

Redmineをダウンロードして/var/lib/redmineに配置。
確かredmine-1.0.3.tar.gzを使ったはず。

$cd 保存場所
$ tar zxvf redmine-1.0.3.tar.gz
#mv redmine-1.0.3 /var/lib/redmine

/var/lib/redmine/config/database.ymlの設定を行う。

#cp -p /var/lib/redmine/config/database.yml.example /var/lib/redmine/config/database.yml
#vi var/lib/redmine/config/database.yml

サンプルを見ながら設定すればいけるはず。

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

$cd /var/lib/redmine
#rake generate_session_store

データベースの初期化。

$cd /var/lib/redmine
#rake db:migrate RAILS_ENV="production"
#rake redmine:load_default_data RAILS_ENV="production"

メールについては今回設定を省略(使うつもりがないので)。
というわけで動作確認。

#script/server -e production

ログインする場合は、ユーザ名とパスワードに[admin]を入力する。
(デフォルトで設定されているやつ)

Apacheのインストール

#yum install httpd httpd devel
#/sbin/chkconfig httpd on

Passengerのインストール

#gem install passenger

関連ファイルがインストールされているか確認

#ls /usr/local/bin/passenger*

モジュールのインストールなど。実行後は表示された指示にしたがう。

#passenger-install-apache2-module

面倒なのでSELinuxを無効にしておく。
/etc/selinux/config内のSELINUX=の部分をdisabledにして再起動。

/etc/httpd/conf/httpd.confにPassengerの設定について記述することもできるが、長くなる。
というわけで今回は/etc/httpd/conf.d下にpassenger.confを作成し、以下を記述した。

LoadModule passenger_module /usr/local/lib/ruby/gems/1.8/gems/passenger-3.0.0/ext/apache2/mod_passenger.so
PassengerRoot /usr/local/lib/ruby/gems/1.8/gems/passenger-3.0.0
PassengerRuby /usr/local/bin/ruby

今回はサブディレクトリでRedmineを実行することにしたので、/etc/httpd/conf/httpd.confに以下を記述。

RailsBaseURI /redmine

また、以下を実行。

#ln -s /var/lib/redmine/public /var/www/html/redmine
#chmod 755 -R /var/lib/redmine/public

これでhttp://localhost/redmine/にアクセスするとredmineのページにいけるはず。
ちなみに755は確認のためだけに権限付与したので、正式稼働させる場合はちゃんと考えよう。


これにて導入完了、めでたしめでたし。