将欲奪之、必固與之。

いろいろなこと

Redmineを構築する

概要

・プロジェクト管理ツールの一つ、Redmineを構築する
RedmineはgitやSVNと連携して使用することができる(-Redmine.jp)

構築環境

・OS:CentOS release 6.4
MySQL:5.1.69-1
Apachehttpd-2.2.15-28
Redmine:2.3.0
Ruby:1.9.3-p484
Ruby on Rails:3.2.13

EPELリポジトリを追加

1.epel-releaseのバージョン確認

http://dl.fedoraproject.org/pub/epel/6/x86_64/repoview/epel-release.html

2.EPELリポジトリを追加する
# rpm -Uvh epel-release
 (2013.07.14現在:rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm)

必要なパッケージをインストール

1.開発ツールをインストール
# yum -y groupinstall "Development tools"
2.RubyとPassengerのビルドに必要なヘッダファイルなどをインストール
# yum install -y openssl-devel readline-devel zlib-devel curl-devel libyaml-devel
3.MySQLとヘッダファイルをインストール
# yum install -y mysql-server mysql-devel
4.Apacheとヘッダファイルをインストール
# yum install -y httpd httpd-devel 
5.ImageMagickとヘッダファイル・日本語フォントをインストール
# yum install -y ImageMagick ImageMagick-devel
# yum install -y ipa-pgothic-fonts

Rubyのインストール

1.ソースコードダウンロード(1.9.3系)
# curl -O ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p484.tar.gz
2.Rubyをビルド
# tar zxvf ruby-1.9.3-p484.tar.gz
# cd ruby-1.9.3-p484
# ./configure --disable-install-doc
# make
# make install
# ruby -v
ruby 1.9.3p484 (2013-11-22 revision 43786) [x86_64-linux]

bundlerのインストール

# gem install bundler --no-rdoc --no-ri

MySQL設定

1.キャラクタセットをutf8に設定
# cp -p /etc/my.cnf /etc/my.cnf.org
# sed '/symbolic-links=0/s/$/\n\ncharacter-set-server=utf8\ndefault-storage-engine=InnoDB\ninnodb_file_per_table\nquery-cache-size=16M/g' /etc/my.cnf.org > /etc/my.cnf
# sed 's/^  //' <<EOF>>/etc/my.cnf
  
  [mysql]
  default-character-set=utf8
EOF
2.MySQL起動と自動起動設定
# /etc/init.d/mysqld start
# chkconfig mysqld on
3.文字コード設定確認
# mysql -uroot -e"show variables like 'character_set%';"
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | utf8                       |
| character_set_connection | utf8                       |
| character_set_database   | utf8                       |
| character_set_filesystem | binary                     |
| character_set_results    | utf8                       |
| character_set_server     | utf8                       |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)
4.rootユーザのパスワード変更・匿名ユーザ削除
# mysql -uroot
mysql> use mysql
mysql> update user set password=password('*****') where user = 'root';
mysql> delete from user where user = ' ' ;
mysql> flush privileges;
mysql> exit;
5.Redmine用データベースとユーザの作成
# mysql -uroot -p
mysql> create database db_redmine default character set utf8;
mysql> grant all on db_redmine.* to user_redmine identified by '*****';
mysql> flush privileges;
mysql> exit

Redmineインストール

1.Redmine(2.3系)をダウンロードする
(http://rubyforge.org/frs/?group_id=1850)
# wget http://rubyforge.org/frs/download.php/76867/redmine-2.3.0.tar.gz
2.Redmineの展開と配置
# tar zxvf redmine-2.3.0.tar.gz
#  ls
redmine-2.3.1  redmine-2.3.1.tar.gz
# mv redmine-2.3.0 /var/lib/redmine
3.DB接続設定
# cd /var/lib/redmine/config
# sed 's/^  //' <<EOF>database.yml
  production:
    adapter: mysql2
    database: db_redmine
    username: user_redmine
    password: *****
    host: localhost
    encoding: utf8
EOF
4.configuration.yml作成
# cd /var/lib/redmine/config
# sed 's/^  //' <<EOF>configuration.yml
  production:
    email_delivery:
      delivery_method: :smtp
      smtp_settings:
        address: "localhost"
        port: 25
        domain: 'redmine.by-road.info'
  rmagick_font_path: /usr/share/fonts/ipa-pgothic/ipagp.ttf
EOF
5.Gemパッケージのインストール
# cd /var/lib/redmine
# bundle install --without development test

Redmineの初期設定とデータベースのテーブル作成

# cd /var/lib/redmine
# bundle exec rake generate_secret_token
# RAILS_ENV=production bundle exec rake db:migrate

Passengerのインストール

1.Passengerのインストール
# gem install passenger --no-rdoc --no-ri
2.PassengerのApache用モジュールインストール
# passenger-install-apache2-module
LoadModule passenger_module /usr/local/lib/ruby/gems/1.9.1/gems/passenger-4.0.5/libout/apache2/mod_passenger.so
   PassengerRoot /usr/local/lib/ruby/gems/1.9.1/gems/passenger-4.0.5
   PassengerDefaultRuby /usr/local/bin/ruby
# passenger-install-apache2-module --snippet
LoadModule passenger_module /usr/local/lib/ruby/gems/1.9.1/gems/passenger-4.0.5/libout/apache2/mod_passenger.so
PassengerRoot /usr/local/lib/ruby/gems/1.9.1/gems/passenger-4.0.5
PassengerDefaultRuby /usr/local/bin/ruby

Apacheの設定

1.Passengerの設定を追加
Phusion Passenger users guide
# sed 's/^  //' <<EOF>/etc/httpd/conf.d/passenger.conf
  # Passengerの基本設定
  # passsenger-install-apache2-module --snippetを実行して表示される結果
  
EOF
# passenger-install-apache2-module --snippet >> /etc/httpd/conf.d/passenger.conf
# sed 's/^  //' <<EOF>>/etc/httpd/conf.d/passenger.conf
  
  # Passengerが追加するHTTPヘッダを削除するための設定
  #
  Header always unset "X-Powered-By"
  Header always unset "X-Rack-Cache"
  Header always unset "X-Content-Digest"
  Header always unset "X-Runtime"
  
  # 必要に応じてPassengerのチューニングのための設定を追加
  # 詳しくはPhusion Passenger users guide(http://www.modrails.com/documentation/Users%20guide%20Apache.html)をご覧ください。
  PassengerMaxPoolSize 20
  PassengerMaxInstancesPerApp 4
  PassengerPoolIdleTime 3600
  PassengerHighPerformance on
  PassengerStatThrottleRate 10
  PassengerSpawnMethod smart
  RailsAppSpawnerIdleTime 86400
EOF
2.Rednmieモジュールの権限設定変更
# chown -R apache:apache /var/lib/redmine 
3.Apacheの起動設定と自動起動設定
# /etc/init.d/httpd start
# chkconfig httpd on
4./redmine以下でのアクセスに変更
# ln -s /var/lib/redmine/public /var/www/html/redmine
# echo "RackBaseURI /redmine" >> /etc/httpd/conf.d/passenger.conf 
# service httpd configtest
# service httpd restart

Pluginを追加する

1.issue_template

http://yuriken27.hatenablog.com/entry/20130413/1365865900
https://bitbucket.org/akiko_pusu/redmine_issue_templates/downloads

2.Absolute dates

https://github.com/suer/redmine_absolute_dates.git

インストール手順
# bundle install
# bundle update
# rake redmine:plugins:migrate RAILS_ENV=production 

参考

http://blog.redmine.jp/articles/2_3/installation_centos/
http://wiki.livedoor.jp/you_hiko/d/Redmine%202.2.3%A4%F2CentOS%206%B7%CF%A4%CB%A5%A4%A5%F3%A5%B9%A5%C8%A1%BC%A5%EB%A4%B9%A4%EB%BC%EA%BD%E7
http://www.02.246.ne.jp/~torutk/swetools/redmine/setupCentOS6.html
http://symfoware.blog68.fc2.com/blog-entry-1116.html