CentOS7.2でRedMine3.1を動作させる。

Pocket
LINEで送る

参考URIの通りにするだけなのですが・・・(;^ω^)。でも、以前設定したときにはドツボにはまってしまいましたので、ステップ・バイ・ステップで進めていきましょう(・∀・)。

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

まず、ひたすら必要なパッケージを入れていきます。

開発ツール(Cコンパイラ等)のインストール

# yum -y groupinstall "Development Tools"

RubyとPassengerのビルドに必要なヘッダファイルなどのインストール

# yum -y install openssl-devel readline-devel zlib-devel curl-devel libyaml-devel libffi-devel

MariaDBとヘッダファイルのインストール

# yum -y install mariadb-server mariadb-devel

Apacheとヘッダファイルのインストール

# yum -y install httpd httpd-devel

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

# yum -y install ImageMagick ImageMagick-devel ipa-pgothic-fonts

Rubyの導入

RubyのオフィシャルサイトのダウンロードページからRuby2.2の最新のソースコードをダウンロードします。現時点(2015年11月8日)では2.2.3が最新でした。

http://www.ruby-lang.org/ja/downloads/

# curl -O https://cache.ruby-lang.org/pub/ruby/2.2/ruby-2.2.3.tar.gz

とします。

Rubyのソースコードを展開してビルドします。

# tar xvf ruby-2.2.3.tar.gz
# cd ruby-2.2.3
# ./configure --disable-install-doc
# make
# make install
# cd ..

続いて、ちゃんとインストールされているか確認です(・`ω´・ )。

# ruby -v
ruby 2.2.3p173 (2015-08-18 revision 51636) [i686-linux]

Ruby用のパッケージ管理ツールであるbundlerのインストールをします。これはRedmineが使用するgemパッケージをインストールするのに使用するものです。

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

MariaDBの設定をする

# vi /etc/my.cnf

でファィルを開きます。中の[mysqld]セクションに

character-set-server=utf8

を、 [mysql]セクションに

default-character-set=utf8

を、追加します。[mysql]セクションは無かったので「[mysql]」の一行も追加して書きました。

MariaDBの起動と自動起動設定をします。コマンドプロンプトから

# service mariadb start
# systemctl enable mariadb

を叩きます。

実際設定が反映されているか、確認します。

# mysql –uroot

でMariaDBに入ります。コンソールから次のコマンドを叩きます。

show variables like 'character_set%';

次のようにValueが設定されていればOKです(・∀・)。

キャプチャ

 

初期設定ツール「mysql_secure_installation」を実行してrootパスワードの設定や不要なユーザー・データベースの削除を行います。

# mysql_secure_installation

あとは指示通りにサクサク進めるだけです。

次にようやくRedmine用のデータベースなどの設定に入ります。

# mysql -uroot -p
MariaDB [(none)]> create database db_redmine default character set utf8;
MariaDB [(none)]> grant all on db_redmine.* to user_redmine@localhost identified by 'pwd_redmine';
MariaDB [(none)]> flush privileges;
MariaDB [(none)]> exit;

先ほど設定したrootパスワードを入力して、処理に移ります。ここでは、redmineのデータベースユーザはuser_redmine、パスワードはpwd_redmineに設定しています。ポリシーに合わせて設定しましょう。

Redmineのインストール

SubversionのリポジトリからRedmineの3.1.xの最新のファイル一式をダウンロードします。

# svn co http://svn.redmine.org/redmine/branches/3.1-stable /var/lib/redmine

Redmineのインストールディレクトリ(今回は/var/lib/redmine)以下にデータベース接続設定ファイル「config/database.yml」を作成します。データベース名、ユーザ名、パスワードはMariaDBの設定した内容です。ymlファイルの字下げは「半角スペース2個ずつ」です。1個でも3個で目駄目です。今回は次のような内容になります。

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

続いて設定ファイル「config/configuration.yml」を作ります。内容は次の通りですね。ymlファイルの字下げは「半角スペース2個ずつ」ですから、注意しましょう。ドメインはFQDNですので環境に合わせて設定してください。

production:
  email_delivery:
    delivery_method: :smtp
    smtp_settings:
      address: "localhost"
      port: 25
      domain: FQDN

  rmagick_font_path: /usr/share/fonts/ipa-pgothic/ipagp.ttf

最後に、gemパッケージをbundlerを使用して必要な物を全部入れてしまいます。

# bundle install --without development test --path vendor/bundle

 パーミッションの変更をします。

# chown -R apache:apache /var/lib/redmine/

 

Redmineの初期設定をする

セッション改ざん防止用秘密鍵の作成

# bundle exec rake generate_secret_token

データベースのテーブル作成

# RAILS_ENV=production bundle exec rake db:migrate

デフォルトデータの登録

# RAILS_ENV=production REDMINE_LANG=ja bundle exec rake redmine:load_default_data

Passengerのインストール

# gem install passenger --no-rdoc --no-ri

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

# passenger-install-apache2-module --auto

 

 

Apacheの設定

今回は、http://fqdn/redmineというアドレスでアクセスするように設定していきます。専用サーバではなく、サブディレクトリ運用になりますね。

Passenger用の設定を表示させる

# passenger-install-apache2-module --snippet

をコマンドプロンプトとから叩きます。そのときに表示される情報をApacheの設定ファィルに記載しますのでコピーしておきます。内容は環境によって異なるので「必ずインストールした環境の情報」で設定しましょう。私の環境では次のように表示されました。

LoadModule passenger_module /usr/local/lib/ruby/gems/2.2.0/gems/passenger-5.0.23/buildout/apache2/mod_passenger.so
<IfModule mod_passenger.c>
  PassengerRoot /usr/local/lib/ruby/gems/2.2.0/gems/passenger-5.0.23
  PassengerDefaultRuby /usr/local/bin/ruby
</IfModule>

confファイルを作る

設定ファィルを作ります。

2.0以降あたりから、conf.d/の中を自動で読み込んでくれるようになっています。

# vi /etc/httpd/conf.d/redmine.conf

に、次のような内容を記述します。

# Redmineへのアクセス権の設定
<Directory "/var/lib/redmine/public">
  Require all granted
</Directory>

# Passengerの基本設定。
LoadModule passenger_module /usr/local/lib/ruby/gems/2.2.0/gems/passenger-5.0.23/buildout/apache2/mod_passenger.so
<IfModule mod_passenger.c>
  PassengerRoot /usr/local/lib/ruby/gems/2.2.0/gems/passenger-5.0.23
  PassengerDefaultRuby /usr/local/bin/ruby
</IfModule>

# Passengerが追加するHTTPヘッダを削除するための設定
Header always unset "X-Powered-By"
Header always unset "X-Runtime"

# 必要に応じてPassengerのチューニングのための設定を追加(任意)。
PassengerMaxPoolSize 20
PassengerMaxInstancesPerApp 4
PassengerPoolIdleTime 864000
PassengerHighPerformance on
PassengerStatThrottleRate 10
PassengerSpawnMethod smart
PassengerFriendlyErrorPages off

# Apacheのサブディレクトリで動かすための設定
# http://fqdn/itsでアクセスする場合は次のようにする。
RackBaseURI /redmine

これで、Apacheの設定は終わりです。

続いて、シンボリックリンクを張って、サブディレクトリで運用できるようにします。

# ln -s /var/lib/redmine/public /var/www/html/redmine

設定が全部終わりましたので設定を反映させます。

# service httpd configtest

設定に誤りが無いか確認します。問題なければ「Syntax OK」と表示されます。

次に、サーバの再起動です。自動起動が設定されていない場合は、自動起動の設定もします。

# service httpd restart
# systemctl enable httpd

 

サーバにアクセスして、Redmineの画面が表示されれば完了です(・∀・)。

【参考URI】

Monacoinを投げる
モナゲ(tipmona)ってなに?
そもそもMonacoinってなに?
Pocket
LINEで送る

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

お手数ですが計算してくださいm(__)m *(必須) Time limit is exhausted. Please reload CAPTCHA.