Redmine2.5を動かす[準備]」の続きです。今回はRedmineのインストールと設定を行います。

なお、Redmineはシンボリックリンクでアクセスできるように設定を行い、DocumentRootの設定は変更しません。

スポンサードリンク

Redmineのインストールと設定

ダウンロードと展開

http://www.redmine.org/projects/redmine/wiki/Download からダウンロードするパッケージを確認します。

MD5のチェックサムを合わせて確認しダウンロード先のアドレスを確認して、以下のコマンドでダウンロードから展開、ディレクトリの移動まで実行します。

# cd /tmp
# curl -O http://www.redmine.org/releases/redmine-2.5.2.tar.gz
・・・(略)・・・
# md5sum redmine-2.5.2.tar.gz
863785a593e52efd0e6a3c03946cf637  redmine-2.5.2.tar.gz
# tar vfxz redmine-2.5.2.tar.gz
・・・(略)・・・
# mkdir redmine-2.5.2/public/plugin_assets
# mv redmine-2.5.2 /usr/share/ ・・・・・・ (15)

(15) Redmineを展開したディレクトリを「/usr/share」へ移動します。

データベースの接続設定

「/usr/share/redmine-2.5.2/config/database.yml」を新規作成します。

production:
  adapter: mysql2
  database: db_redmine
  host: localhost
  username: user_redmine
  password: <ユーザーの作成の時に入力したパスワード>
  encoding: utf8

メールとフォントの設定

「/usr/share/redmine-2.5.2/config/configuration.yml」を新規作成します。
※当サイトの内容ではメールを送信するためのライブラリをインストールしていないため適当に設定しました。

production:
  email_delivery:
    delivery_method: :smtp
    smtp_settings:
      address: "localhost"
      port: 25
      domain: 'ドメイン名'

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

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

Redmineで使用するGemをインストールします。

# cd /usr/share/redmine-2.5.2
# bundle install --without development test
・・・(略)・・・

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

セッションデータ改竄防止用鍵の生成とテーブル作成を行います。

# cd /usr/share/redmine-2.5.2
# bundle exec rake generate_secret_token
# RAILS_ENV=production bundle exec rake db:migrate
・・・(略)・・・

Passengerのインストール

Apache上でRuby on Rails(RoR)のアプリケーションを動かすのに必要なモジュールをインストールします。

# gem install passenger
・・・(略)・・・
2 gems installed
# passenger-install-apache2-module
・・・(略)・・・
Press Enter to continue, or Ctrl-C to abort
<Enterキー>
-----------------------------------------
Which languages are you interested in ?

Use <space> to select.
If the menu doesn't display correctly, press '!'
 ■ ■  Ruby ・・・・・・ (16)
   ■  Python
   ■  Node.js
   ■  Meteor
・・・(略)・・・
Press ENTER to continue.
<Enterキー>
・・・(略)・・・
Phusion Passenger is a trademark of Hongli Lai & Ninh Bui

(16) 「選択にはスペースを使って」とありますが、私の環境はEnterキーで先に進みました。

Apacheの設定

アクセスディレクトリの準備

Apacheがredmine内のブラウザからアクセスできるようにredmineへのシンボリックリンクの作成とアクセス権の変更を行います。

# chown -R apache:apache /usr/share/redmine-2.5.2/ ・・・・・・ (17)
# ln -s /usr/share/redmine-2.5.2/public /var/www/html/redmine ・・・・・・ (18)

(17) redmineのディレクトリ以下をapacheからアクセスできるようにユーザー・グループの変更を行います。

(18) redmineのディレクトリへシンボリックリンクを作成します。
※なお、私も試しましたがエイリアスではPassengerの仕様のために正常にアクセスできません。(参考サイト)

Passengerの設定、を追加

Passengerを使うための設定ファイルを「/etc/httpd/conf.d/passenger.conf」へ追加します。

# passenger-install-apache2-module --snippet > /etc/httpd/conf.d/passenger.conf ・・・・・・ (19)
# vi /etc/httpd/conf.d/passenger.conf

以下 ファイルの内容。

### Contents which "passenger-install-apache2-module --snippet" outputted. ・・・・・・ (20)
LoadModule passenger_module /usr/local/lib/ruby/gems/2.0.0/gems/passenger-4.0.52/buildout/apache2/mod_passenger.so
<IfModule mod_passenger.c>
  PassengerRoot /usr/local/lib/ruby/gems/2.0.0/gems/passenger-4.0.52
  PassengerDefaultRuby /usr/local/bin/ruby
</IfModule>

### A setup for deleting the HTTP header which Passenger adds.(optional) ・・・・・・ (21)
Header always unset "X-Powered-By"
Header always unset "X-Rack-Cache"
Header always unset "X-Content-Digest"
Header always unset "X-Runtime"

### A setup for tuning of Passenger is added.(optional) ・・・・・・ (22)
### Please refer to "http://www.modrails.com/documentation/Users%20guide%20Apache.html" for details.
PassengerMaxPoolSize 40
PassengerMaxInstancesPerApp 10
PassengerPoolIdleTime 3600
PassengerHighPerformance on
PassengerStatThrottleRate 60
PassengerSpawnMethod smart
PassengerMaxPreloaderIdleTime 0
PassengerResolveSymlinksInDocumentRoot off

### Access settings from browser ・・・・・・ (23)
RackBaseURI /redmine

<Directory "/usr/share/redmine-2.5.2/public/"> ・・・・・・ (24)
  Options FollowSymLinks
  AllowOverride All
  Order allow,deny
  Allow from all
</Directory>

※「<」「>」は半角文字で入力してください。
※ファイルの「###」から始まる行はコメント文なので記載不要です。

(19) 必要な設定内容をファイルへ直接出力します。以降はその結果を編集します。

(20) 「passenger-install-apache2-module –snippet > /etc/httpd/conf.d/passenger.conf」を実行して得られた内容そのままです。

(21) Passengerが追加するHTTPヘッダを削除するための設定。(削除しない場合は記載不要です。)

(22) 以下の内容を参考に設定内容を決めてください。

PassengerMaxPoolSize
<プロセス最大起動数>
Ruby on Railsのプロセス最大起動数。
推奨値はメモリ256MBでMySQL等を同時に実行する場合は2、メモリ2GBの環境では30が推奨値になります。
未設定時: 6
PassengerMaxInstancesPerApp
<アプリプロセス最大起動数>
Ruby on Railsアプリのプロセス最大起動数。
1つのRailsアプリがサーバーのリソースを占有しないための設定。
未設定時: 0(制限なし)
PassengerPoolIdleTime
<秒数>
Ruby on RailsアプリのTimeout。
設定した秒数Railsアプリにアクセスがないと自動的にアプリが終了します。
未設定時: 300[秒]
PassengerHighPerformance
<on|off>
Apacheのモジュールの互換性を犠牲にしてPassengerの動作を高速化します。
onにするとmod_rewrite(URLを正規表現で書き換えるモジュール)、mod_autoindex(ディレクトリへアクセスしたときディレクトリの内容を表示するモジュール)などいくつかのモジュールが正常に動作しなくなります。
未設定時: off
PassengerStatThrottleRate
<秒数>
Railsの自動検出や再起動指示の検出のためにファイルシステムを確認する間隔を秒数で設定します。
未設定時: 0(リクエストごとに確認)
PassengerSpawnMethod
<smart | direct>
Rubyのアプリプロセスの生成方法を設定します。
smart: プロセスをキャッシュする方法。プロセスの再利用が発生したとき高速に動くが、一部互換性が無い可能性がある。
direct: キャッシュを一切行わない方法。smartより遥かに遅いがアプリ、ライブラリとの互換性がある。
未設定時: smart
PassengerMaxPreloaderIdleTime
<秒数>
Passengerによってロードされたプロセスのアイドル時のTimeoutを設定します。
0を設定するとアイドル時のTimeoutをしないようにできます。
秒数を大きくすることでわずかにメモリ使用量を増加させる可能性があるが、十分なメモリがあるなら大きな値か0を設定するのが望ましい。
未設定時: 300[秒]
PassengerResolveSymlinksInDocumentRoot
<on | off>
PassengerがDocumentRootからのシンボリックリンクを解決するかどうかの設定。
※シンボリックリンクでredmineディレクトリへのアクセスを行う場合は設定の必要があります
※私はこの設定の必要性に気付かずハマっていました。
未設定時: off

※「RailsAppSpawnerIdleTime」はPassenger4.0.0以降で削除され、「PassengerMaxPreloaderIdleTime」に置き換えられています。
※他のオプションについてはコチラをご確認ください。

(23) ブラウザからアクセスするredmineのディレクトリを設定します。

(24) redmineのディレクトリのアクセスについて設定を行っています。「.htaccess」による設定を行うように設定しています。

設定の反映

httpdを再起動します。

# service httpd restart
Stopping httpd:                         [OK]
Starting httpd:                         [OK]

SELinuxの設定変更

現状はSELinuxによって動作が妨げられています。「http://<ドメイン or IP>/redmine」へアクセスを行うと以下のような画面が出力されます。

redmine_20

SELinuxの全てを無効化しても構わない、と言う方は下記の設定を行ってください。

SELinuxを有効にしたまま、必要なところだけ変更したいという方は下記の設定を行わずに次の記事へ行ってください。

全てを無効化

サーバーを外部からアクセスできるように設定するわけではない場合はSELinuxごと無効化します。

設定を変更した後は、OSの再起動を実行してください。

# vi /etc/selinux/config
---------- 以下 ファイルの内容 ----------
・・・(略)・・・
SELINUX=disabled
・・・(略)・・・

以上で、設定変更は完了です。

redmine_21

このような画面が表示されれば成功です。
(SELinuxを有効にしたまま使いたい人はもう少しお預け)

 

次回、SELinuxを有効化していても動作させる方法と、基本的な動作の確認を行います。

トラックバック

トラックバックURL:

トラックバック & ピンバック

コメントはまだありません。

作ったもの

種牡馬メモサイト

フリーダムウォーズ素材メモサイト

月別アーカイブ

つぶやき

更新記録カレンダー

2019年8月
« 1月    
 1234
567891011
12131415161718
19202122232425
262728293031  

参考書籍

XHTML/HTML+CSSスーパーレシピブックXHTML/HTML+CSSスーパーレシピブック
エ・ビスコム・テック・ラボ

毎日コミュニケーションズ
売り上げランキング : 74419

Amazonで詳しく見る
現場のプロから学ぶXHTML+CSS現場のプロから学ぶXHTML+CSS
益子 貴寛,堀内 敬子,小林 信次,千貫 りこ,伊藤 学,山田 あかね,西畑 一馬,CSS Nite

毎日コミュニケーションズ
売り上げランキング : 39400

Amazonで詳しく見る