ConoHa VPS に redmine 2.6 をインストールしてみた

提供: tknotebook
2016年11月9日 (水) 12:21時点におけるNakamuri (トーク | 投稿記録)による版

(差分) ←前の版 | 最新版 (差分) | 次の版→ (差分)
移動: 案内検索

メインページ>コンピュータの部屋>ConoHa VPS を使ってみた

2014年11月3日 連休最終日

ConoHa VPS を使い始めて、初めてのちょっと大きなソフトのインストールです。ruby関係がややこしそう。

Apache 2.2, MySQL 5.5, php 5.6 がインストール済みの状態でのインストールです。

redmine 2.5をCentOS 6.5にインストールする手順」 を参考にしました。

調査

まず、インストールの要件を調べてみます。

MYSQL や Apache に特に制限はないようです。MYSQL 5.1 でチェックなんて書いてありますが 5.5 でも大丈夫でしょう。 Apache 2.2 は実績があるようです。 redmine 2.5 は ruby 2.1 には非対応。redmine 2.6 はruby 2.1 に対応なので、 redmine2.6 + ruby2.1 という最新の組み合わせに決定。 インストールの際は epel が enable であった方がよいらしいが ConoHa は最初から enable なので問題なさそう。

ruby が既に入っているか調べてみたら 1.8.7 が入っていました。

ruby 1.8.7の削除

yum list installed | grep ruby
ruby.x86_64                                1.8.7.374-2.el6           @base
ruby-irb.x86_64                            1.8.7.374-2.el6           @base
ruby-libs.x86_64                           1.8.7.374-2.el6           @base
ruby-rdoc.x86_64                           1.8.7.374-2.el6           @base
rubygems.noarch                            1.3.7-5.el6               @base
yum remove ruby
================================================================================
 Package           Arch           Version                   Repository     Size
================================================================================
Removing:
 ruby              x86_64         1.8.7.374-2.el6           @base         1.8 M
Removing for dependencies:
 ruby-irb          x86_64         1.8.7.374-2.el6           @base         1.0 M
 ruby-rdoc         x86_64         1.8.7.374-2.el6           @base         1.3 M
 rubygems          noarch         1.3.7-5.el6               @base         713 k

Transaction Summary
================================================================================
Remove        4 Package(s)

RubyとPassengerのビルドに必要なものをインストール

openssl-devel readline-devel zlib-devel curl-devel libyaml-devel mysql-devel httpd-devel が必要らしいので インストール

yum install openssl-devel readline-devel zlib-devel curl-devel libyaml-devel mysql-devel httpd-devel
=====================================================================================
 Package                 Arch          Version                     Repository   Size
=====================================================================================
Installing:
 httpd-devel             x86_64        2.2.15-39.el6.centos        base        152 k
 libcurl-devel           x86_64        7.19.7-37.el6_5.3           base        244 k
 libyaml-devel           x86_64        0.1.6-1.el6                 epel         91 k
 readline-devel          x86_64        6.0-4.el6                   base        134 k
Installing for dependencies:
 apr-devel               x86_64        1.3.9-5.el6_2               base        176 k
 apr-util-devel          x86_64        1.3.9-3.el6_0.1             base         69 k
 cyrus-sasl-devel        x86_64        2.1.23-15.el6               base        303 k
 expat-devel             x86_64        2.0.1-11.el6_2              base        120 k
 libidn-devel            x86_64        1.18-2.el6                  base        137 k
 ncurses-devel           x86_64        5.7-3.20090208.el6          base        642 k
 openldap-devel          x86_64        2.4.39-8.el6                base        1.1 M

Transaction Summary
=====================================================================================
Install      11 Package(s)

ImageMagickとヘッダファイルと日本語フォントのインストール

yum install ImageMagick ImageMagick-devel ipa-pgothic-fonts
=====================================================================================
 Package                    Arch         Version                    Repository  Size
=====================================================================================
Installing:
 ImageMagick                x86_64       6.5.4.7-7.el6_5            base       1.7 M
 ImageMagick-devel          x86_64       6.5.4.7-7.el6_5            base        86 k
 ipa-pgothic-fonts          noarch       003.02-4.1.el6             base       3.6 M
Installing for dependencies:
 ConsoleKit                 x86_64       0.4.1-3.el6                base        82 k
 ConsoleKit-libs            x86_64       0.4.1-3.el6                base        17 k
 GConf2                     x86_64       2.28.0-6.el6               base       964 k
 ORBit2                     x86_64       2.14.17-5.el6              base       168 k
 OpenEXR-libs               x86_64       1.6.1-8.1.el6              base       197 k
 bzip2-devel                x86_64       1.0.5-7.el6_0              base       250 k
 dbus                       x86_64       1:1.2.24-7.el6_3           base       207 k
 freetype-devel             x86_64       2.3.11-14.el6_3.1          base       364 k
 ghostscript                x86_64       8.70-19.el6                base       4.4 M
 ghostscript-devel          x86_64       8.70-19.el6                base        42 k
 ghostscript-fonts          noarch       5.50-23.2.el6              base       590 k
 ilmbase                    x86_64       1.0.1-6.1.el6              base        72 k
 jasper-devel               x86_64       1.900.1-15.el6_1.1         base       374 k
 lcms-devel                 x86_64       1.19-1.el6                 base        49 k
 lcms-libs                  x86_64       1.19-1.el6                 base       100 k
 libICE-devel               x86_64       1.0.6-1.el6                base        15 k
 libIDL                     x86_64       0.8.13-2.1.el6             base        83 k
 libSM-devel                x86_64       1.2.1-2.el6                base        12 k
 libX11-devel               x86_64       1.6.0-2.2.el6              base       982 k
 libXau-devel               x86_64       1.0.6-4.el6                base        14 k
 libXext-devel              x86_64       1.3.2-2.1.el6              base        74 k
 libXt                      x86_64       1.1.4-6.1.el6              base       165 k
 libXt-devel                x86_64       1.1.4-6.1.el6              base       454 k
 libcroco                   x86_64       0.6.2-5.el6                base       100 k
 libgsf                     x86_64       1.14.15-5.el6              base       116 k
 libjpeg-turbo-devel        x86_64       1.2.1-3.el6_5              base        96 k
 librsvg2                   x86_64       2.26.0-14.el6              base       140 k
 libtiff-devel              x86_64       3.9.4-10.el6_5             base       468 k
 libwmf-lite                x86_64       0.2.8.4-23.el6             base        51 k
 libxcb-devel               x86_64       1.9.1-2.el6                base       1.0 M
 polkit                     x86_64       0.96-7.el6                 base       161 k
 sgml-common                noarch       0.6.3-33.el6               base        43 k
 urw-fonts                  noarch       2.4-10.el6                 base       3.1 M
 xorg-x11-proto-devel       noarch       7.7-9.el6                  base       286 k

Transaction Summary
=====================================================================================
Install      37 Package(s)

ruby 2.1.4 のインストール

いよいよ ruby 2.1.4 のインストールです。これはソースからインストール

ダウンロード

curl -O http://cache.ruby-lang.org/pub/ruby/2.1/ruby-2.1.4.tar.gz

展開

tar xvf ruby-2.1.4.tar.gz

移動

cd ruby-2.1.4

Configure

./configure

make

make

インストール

make install

なんかいくつか tk がどうのとかエラーが出ましたが、インストールは成功で終了。

確認

ruby -v
ruby 2.1.4p265 (2014-10-27 revision 48166) [x86_64-linux]

bundlerのインストール

これは gem でインストールします。これはアプリで必要なものをインストールしてくれる魔法の杖のようです。

gem install bundler
Fetching: bundler-1.7.4.gem (100%)
Successfully installed bundler-1.7.4
Parsing documentation for bundler-1.7.4
Installing ri documentation for bundler-1.7.4
Done installing documentation for bundler after 3 seconds
1 gem installed

成功したようです。

RedmineのDBを用意

ここでは、データベース名 db_redmine, ユーザ名 user_redmine, パスワードは xxxxx(伏字) で用意する例を示します。

create database db_redmine;
create user user_redmine identified by 'xxxx';
grant all on db_redmine.* to user_redmine;

redmine 2.6 をインストール

ダウンロード

curl -O http://www.redmine.org/releases/redmine-2.6.0.tar.gz

展開

tar xvf redmine-2.6.0.tar.gz

インストール(といっても置くだけ)

mv redmine-2.6.0 /opt/redmine

設定

config/database.yml

config/database.yml.example を config/database.yml へコピーして、production の部分を変更。データベースの設定です。

production:
  adapter: mysql2
  database: db_redmine
  host: localhost
  username: user_redmine
  password: "XXXXXX"
  encoding: utf8

config/configuration.yml

メール送信の設定です。同じマシン上で動いている postfix は普通同じサーバからのメール送信を無認証で受け入れるように設定するはずなので(後で実際にそうしました)、 以下のように設定します。

  # ==== Simple SMTP server at localhost
  #
  #  email_delivery:
    delivery_method: :smtp
    smtp_settings:
      address: "localhost"
      port: 25

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

この辺からそろそろ意味が分からなくなってきていますが、bundle でアプリに必要なものをインストール。

cd /opt/redmine
bundle install

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

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

エラーに注意。パスワード等が間違っていても、よく見ていないと見逃します(^^; database.yml は予め mysql で試験しておいた方が無難です。。

Passengerのインストール

apacheでredmineを動かすためのものらしいですが、よくわかりません。

gem install passenger

PassengerのApache用モジュールのインストール

passenger-install-apache2-module

passengerの設定

/etc/httpd/conf.d/passenger.conf を作成

これはredmine 2.5をCentOS 6.5にインストールする手順 に載っていたものをパクリました。ただし、LoadModule から始まる5行は PassengerのApache用モジュールのインストール 完了時に httpd.conf に入れるように指示されたもので、redmine 2.5をCentOS 6.5にインストールする手順 に載っていたものとはかなり異なりましたので、入れ替えました。


# Passengerの基本設定。
# passenger-install-apache2-module --snippet を実行して表示される設定を使用。
# 環境によって設定値が異なりますので以下の3行はそのまま転記しないでください。
#
  LoadModule passenger_module /usr/local/lib/ruby/gems/2.1.0/gems/passenger-4.0.53/buildout/apache2/mod_passenger.so
   <IfModule mod_passenger.c>
     PassengerRoot /usr/local/lib/ruby/gems/2.1.0/gems/passenger-4.0.53
     PassengerDefaultRuby /usr/local/bin/ruby
    </IfModule> 

# 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
PassengerMaxPreloaderIdleTime 0
RackBaseURI /redmine

パーミッション調整

cd /opt
chown -R apache:apache redmine

シンボリックリンク作成

redmine の public フォルダを Web から見えるようにします。

ln -s /opt/redmine/public /var/www/html/redmine

apacheの再起動

service httpd restart

確認

http://ホスト名/redmine で画面が出るか確認します。

スナップショット

Redmine スクリーンショット.png

見事動きました。ruby に不慣れでここまで4時間。疲れました(^^;

Redmineを使い始めるための初期設定

redmine を始める前にRedmineを使い始めるための初期設定 を忘れずに。特に「デフォルトデータのロード」は使い始める前に必須です。

「デフォルトデータのロード」はしばらく使っているうちに消えてできなくなるので、admin のアカウントのパスワードを変更したらすぐに実行しましょう。

まとめ

以上で終了です。その後使い込んでますが、トラブルは redmine PM(Androidアプリ) で時間の記録ができないくらいですね(Webではできる)。

追記 1

farend_fancyテーマのインストール方法です。

redmineをインストールしたディレクトリで

git clone git://github.com/farend/redmine_theme_farend_fancy.git public/themes/farend_fancy

これで[管理]⇒[表示]のテーマコンボボックスでテーマをfarend_fancyに切り替えれば OK です。

このテーマでは少し濃いめの青になりますが、ヘルプが日本語になるのが魅力です!