[[Linuxめも]]

#contents

[[Redmine:http://redmine.jp/]]はRuby on Railsで開発されているWebベースのプロジェクト管理ソフトウェアです。~
CentOS7に設置して利用できるようにしてみます。

*最新のRubyをインストール [#e2fc2990]

 $ cat /etc/redhat-release
 CentOS Linux release 7.1.1503 (Core)
 $ ruby --version
 ruby 2.0.0p598 (2014-11-13) [x86_64-linux]

Rubyのバージョンが古いのでバージョンアップします。~
rbenvを使用すると複数のバージョンを共存させることができるらしいです。~
別にRVM(Ruby Version Manager)もあります。

gitにてrbenvをインストールします。
 $ git clone git://github.com/sstephenson/rbenv.git .rbenv

 $ vi .bashrc
 export RBENV_ROOT="${HOME}/.rbenv"
 if [ -d "${RBENV_ROOT}" ]; then
   export PATH="${RBENV_ROOT}/libexec:${PATH}"
   eval "$(rbenv init -)"
 fi
 $ source ~/.bashrc

Rubyをインストールするためにrbenvのプラグインruby-buildをインストールします。
 $ mkdir .rbenv/plugins
 $ cd .rbenv/plugins/
 $ git clone git://github.com/sstephenson/ruby-build.git

インストール可能なRubyのバージョンを確認
 $ rbenv install -l

最新のRubyをインストール
 $ rbenv install 2.5.1
 Downloading ruby-2.5.1.tar.bz2...
 -> https://cache.ruby-lang.org/pub/ruby/2.5/ruby-2.5.1.tar.bz2
 error: failed to download ruby-2.5.1.tar.bz2
 
 BUILD FAILED (CentOS Linux 7 using ruby-build 20180424)

ダウンロードに失敗します。~
curlが問題のようなのでバージョンアップします。

 $ curl --version
 curl 7.29.0 (x86_64-redhat-linux-gnu) libcurl/7.29.0 NSS/3.28.4 zlib/1.2.7 libidn/1.28 libssh2/1.4.3

 $ sudo rpm -ivh http://www.city-fan.org/ftp/contrib/yum-repo/rhel7/x86_64/city-fan.org-release-2-1.rhel7.noarch.rpm
 $ sudo yum update --enablerepo=city-fan.org libcurl

 $ curl --version
 curl 7.59.0 (x86_64-redhat-linux-gnu) libcurl/7.59.0 NSS/3.28.4 zlib/1.2.7 libpsl/0.7.0 (+libicu/50.1.2) libssh2/1.8.0 nghttp2/1.31.1

再度インストール
 $ rbenv install 2.5.1
 Downloading ruby-2.5.1.tar.bz2...
 -> https://cache.ruby-lang.org/pub/ruby/2.5/ruby-2.5.1.tar.bz2
 error: failed to download ruby-2.5.1.tar.bz2
 
 BUILD FAILED (CentOS Linux 7 using ruby-build 20180424)

変化無し…。~
オプションを指定するとイケるみたいよ。
 $ RUBY_BUILD_CURL_OPTS=--tlsv1.2 rbenv install 2.5.1

インストールしたRubyのバージョンを確認
 $ rbenv versions

おまじない
 $ rbenv rehash

使用バージョンを切り替え
 $ rbenv global 2.5.1
 $ ruby --version
 ruby 2.5.1p57 (2018-03-29 revision 63029) [x86_64-linux]

*ImageMagickのインストール [#k75a081b]

入っていなければインストールします。
 $ sudo yum install ImageMagick ImageMagick-devel ipa-pgothic-fonts

develを入れておかないとrmagickのインストールでコケます。

*Redmineのインストール [#l203e520]

[[ダウンロードページ:http://www.redmine.org/projects/redmine/wiki/Download]]から最新の安定版をダウンロードします。
[[ダウンロードページ:http://www.redmine.org/projects/redmine/wiki/Download]]から最新の安定版をダウンロードし解凍するか、svnにてチェックアウトするか大きく分けて2通りあります。~
今後のアップグレードを考慮するとsvnでのチェックアウトがおすすめです。
 $ wget http://www.redmine.org/releases/redmine-3.4.5.tar.gz
 $ tar xvzf redmine-3.4.5.tar.gz

 $ svn checkout https://svn.redmine.org/redmine/branches/3.4-stable ./

データベースはMariaDBを使用します。~
文字コードは utf8mb4 で作成しておきます。

config/database.yml.example をコピーして database.yml を作成します。
 production:
   adapter: mysql2
   database: redmine
   host: localhost
   username: redmine
   password: "password"
   encoding: utf8mb4

config/configuration.yml.example をコピーして configuration.yml を作成します。
     email_delivery:
       delivery_method: :sendmail

RubyGemの依存関係を管理するためにBundlerをインストールします。
 $ gem install bundler

解凍した中にGemfileがあるので、その同階層にて以下を実行し、必要なgemをインストールします。
設置したソースの中にGemfileがあるので、その同階層にて以下を実行し、必要なgemをインストールします。
 $ bundle install --without development test

nokogiriが入らない…
 Installing nokogiri 1.8.2 with native extensions
 Gem::Ext::BuildError: ERROR: Failed to build gem native extension.

libxml2とlibxsltは入っているけど、develが無かったので入れてみる。
 $ sudo yum install libxml2-devel libxslt-devel

再度実行して大丈夫でした。~
他にもやったのでその影響もあるかも。

秘密鍵の生成
 $ bundle exec rake generate_secret_token
config/initializers/secret_token.rb が生成されます。

テーブルを作成しますが、utf8mb4を使用しているので、[[MySQL 767byte問題]]に遭遇する可能性があります。
 $ RAILS_ENV=production bundle exec rake db:migrate

日本語のデフォルトデータを登録します。
 $ RAILS_ENV=production REDMINE_LANG=ja bundle exec rake redmine:load_default_data

以下フォルダの書き込み権限を確認します。
-files
-log
-tmp
-tmp/pdf
-public/plugin_assets

ApacheでRedmineを使用できるようにするPassengerをインストールします。
 $ gem install passenger --no-rdoc --no-ri

httpd-develが入っていなければ入れておきます。
 $ sudo yum install httpd-devel

libcurl-develも入れておきましょう。
 $ sudo yum install --enablerepo=city-fan.org libcurl-devel

Apache用のモジュールをインストールします。
 # passenger-install-apache2-module --auto --languages ruby
 WARNING: 'aclocal-1.15' is missing on your system.

怒られた…。~
調べるとautoreconf云々とあったので、以下インストールしてみた。
 $ sudo yum install autoconf automake libtool m4 perl

仕切り直し
 $ gem uninstall passenger
 $ gem install passenger --no-rdoc --no-ri
 # passenger-install-apache2-module --auto --languages ruby
 WARNING: 'aclocal-1.15' is missing on your system.

変化なし。~
aclocal-1.15のハードリンクを作成してみる。
 $ which aclocal
 /usr/bin/aclocal
 # ln /usr/bin/aclocal /usr/bin/aclocal-1.15
 # ln /usr/bin/automake /usr/bin/automake-1.15
 # passenger-install-apache2-module --auto --languages ruby

これでイケました。~
後半に表示されるコードをApacheの設定に追加します。~
不明な場合は以下で得られます。
 $ passenger-install-apache2-module --snippet

 # vi /etc/httpd/conf.d/redmine.conf
 <VirtualHost *:80>
     DocumentRoot /home/redmine/public
     ServerName redmine.example.com
     RailsEnv production
     <Directory /home/redmine/public>
         Require all granted
     </Directory>
 </VirtualHost>
 
 # passenger-install-apache2-module --snippet で得られるコード
 
 LoadModule passenger_module /home/user/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0/gems/passenger-5.2.3/buildout/apache2/mod_passenger.so
 <IfModule mod_passenger.c>
     PassengerRoot /home/user/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0/gems/passenger-5.2.3
     PassengerDefaultRuby /home/user/.rbenv/versions/2.5.1/bin/ruby
 </IfModule>

Apacheを再起動し、ブラウザにて初期設定を進めます。

*Redmineの初期設定 [#e167739e]

Redmineを使い始めるための初期設定~
http://redmine.jp/tech_note/first-step/admin/

インストール直後はログインID、パスワードともに admin で設定されています。~
デフォルトはログイン無しでプロジェクトが公開されているので、日本語周りも含めて設定を変更します。

管理 - 設定 にて各項目を設定します。

|タブ|項目|値|h
|全般|ホスト名とパス|redmine.example.com|
|表示|デフォルトの言語|Japanese(日本語)|
|表示|ユーザー名の表示形式|Admin Redmine|
|認証|認証が必要|チェックあり|
|プロジェクト|デフォルトで新しいプロジェクトは公開にする|チェックなし|

おすすめ初期設定も参考に~
https://www.slideshare.net/g_maeda/redmine-52193785

*Redmineのアップグレード [#a95d4723]

Redmineをダウンロードした方法によって操作が異なります。~
http://guide.redmine.jp/RedmineUpgrade/

svnにてチェックアウトした方が遥かに楽そうです。


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS