Redmine を Mac にインストール

  • 57
    Like
  • 0
    Comment
More than 1 year has passed since last update.
Docker を使ってより簡単に Redmine 環境をつくる方法もあるので次も check it out !!

http://qiita.com/janus_wel/items/c058241a0339216cf05e

手元にあったほうがいいかなと思ったので Redmine をインストール。
個人での使用を前提にしてるので SSL トンネリングなし、メールは飛ばさない。

rbenv を使うので以下を見て設定しておくといい。

http://qiita.com/janus_wel/items/d1a4adb7f28ce4e7a319

インストール場所を決める

/usr/local/redmine にする。

cd /usr/local
mkdir redmine
cd redmine

ソース取得

stable でもインストールがうまくいかないことがあったので github から最新を引っ張ってくる。

git clone https://github.com/redmine/redmine.git .

インストール手順は doc/INSTALL に書いてある。
他にもアップグレード手順が doc/UPGRADING に書いてあったりするので必要に応じて見るといいかもしれない。

Ruby バージョンをあわせる

どうも Redmine 最新でも Ruby 2.1.0 を使えと書いてあるのでそうする。

rbenv install 2.1.0
rbenv rehash
rbenv local 2.1.0

bundler と一緒に passenger もインストールしちゃおう。

gem install bundler passenger
rbenv rehash

MySQL まわりの設定

ここでいったん MySQL 側に移る。インストールしてない場合は以下を参考に。

http://qiita.com/janus_wel/items/ce4bdfb937cdab8720dc

受け皿になるデータベースとそれを使うユーザーの作成。

mysql -u root -p
CREATE DATABASE redmine CHARACTER SET UTF8;
CREATE USER 'redmine'@'localhost' IDENTIFIED BY 'password for redmine';
GRANT ALL PRIVILEGES ON redmine.* TO 'redmine'@'localhost';
FLUSH PRIVILEGES;

ここから Redmine 側にまた戻る。
MySQL への接続設定を書く。まず database.yml をコピーで作る。

cp config/database.yml.example config/database.yml

作った database.yml の username と password を上記で作ったユーザーのものに書き換える。
アダプターは mysql2 のまま。

必要なもののインストール

gem の rmagick やらで必要なものをインストールする。

brew install imagemagick

必要な gem のインストール。
--without test しないと nokogiri のインストールが走ってめんどくさくなるので Redmine の開発がしたい場合以外は without ったほうがいい。

bundle install --path gems --without development test

DB にデータを流し込む

鍵をつくって migrate 。

bundle exec rake generate_secret_token
RAILS_ENV=production bundle exec rake db:migrate

確認

さて、うまくできたかな ?

ruby script/rails server webrick -e production

エラーがなく立ち上がって、 http://localhost:3000/ で Redmine の画面が見えたら成功。

Apache で立ち上げる設定

Apache 用の passenger モジュールをインストール。

passenger-install-apache2-module

上記で出てきた LoadModule なんたらかんたらを Apache 用の設定ファイルに保存。

sudo vim /etc/apache2/other/passenger.conf

仕上げに Redmine 用の VirtualHost 設定をする。ホスト名は redmine.local にしてみた。

sudo vim /etc/apache2/other/redmine.conf
<VirtualHost *:80>
    ServerName redmine.local
    DocumentRoot /usr/local/redmine/public/

    ErrorLog "/usr/local/redmine/log/error_log"
    CustomLog "/usr/local/redmine/log/access_log" common

    <Directory /usr/local/redmine/public/>
        Require all granted
        Options -MultiViews
        AllowOverride all
    </Directory>
</VirtualHost>

ポイントは Require all granted 。 httpd.conf のほうで Require all denied してるもんだからこれがないと Forbidden を拝み続ける羽目になる。

っと、 redmine.local を hosts に登録しないとこのままじゃアクセスできない。

sudo vim /etc/hosts
##
# Host Database
#
# localhost is used to configure the loopback interface
# when the system is booting.  Do not change this entry.
##
127.0.0.1   localhost redmine.local
255.255.255.255 broadcasthost
::1             localhost redmine.local
fe80::1%lo0 localhost redmine.local

localhost になってるところに追加で redmine.local を書く。

Apache を起動。

sudo apachectl start

http://redmine.local/ にアクセスして Redmine の画面が表示されたら成功。

ログローテーション

仕上げにログローテーションの設定をする。とりあえず設定しただけでまだちゃんと動くか試せてないんだけど。
Apache 用の設定すらないのでそれも一緒に追加してやる。

sudo vim /etc/newsyslog.d/apache2.conf
# logfilename          [owner:group]    mode count size when  flags [/pid_file] [sig_num]
/var/log/apache2/access_log 644 10  1000    *   B   /var/run/httpd.pid
/var/log/apache2/error_log  644 10  1000    *   B   /var/run/httpd.pid
sudo vim /etc/newsyslog.d/redmine.conf
# logfilename          [owner:group]    mode count size when  flags [/pid_file] [sig_num]
/usr/local/redmine/log/access_log 644 10  1000    *   B   /var/run/httpd.pid
/usr/local/redmine/log/error_log  644 10  1000    *   B   /var/run/httpd.pid
/usr/local/redmine/log/production.log  644 10  1000    *   B