<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>qui-no Labs &#187; Ruby</title>
	<atom:link href="http://labs.qui-no.com/category/ruby/feed" rel="self" type="application/rss+xml" />
	<link>http://labs.qui-no.com</link>
	<description>株式会社キノの技術メモやTIPSなどの情報</description>
	<lastBuildDate>Tue, 10 May 2011 03:20:39 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Redmine0.9.2の設定と運用</title>
		<link>http://labs.qui-no.com/170</link>
		<comments>http://labs.qui-no.com/170#comments</comments>
		<pubDate>Wed, 17 Feb 2010 06:21:51 +0000</pubDate>
		<dc:creator>加藤 雄亮</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://labs.qui-no.com/?p=170</guid>
		<description><![CDATA[
前回のエントリー「CentOSにRedmine0.9.2をインストール」で、とりあえずRedmineをインストールする事が出来ました。今回は、RedmineとApacheを連携させてバーチャルホストでの運用、またその他 [...]]]></description>
			<content:encoded><![CDATA[<p>
前回のエントリー「<a href="http://labs.qui-no.com/140">CentOSにRedmine0.9.2をインストール</a>」で、とりあえずRedmineをインストールする事が出来ました。今回は、RedmineとApacheを連携させてバーチャルホストでの運用、またその他の設定などをやってみたいと思います。<br />
<br />
<img src="http://labs.qui-no.com/uploads/redmine4.jpg" alt="" title="redmine4" width="420" height="111" class="alignnone size-full wp-image-182" />
<br />
※ここではRedmineと連携するHTTPサーバ（Apache）が構築済みという前提で進めていきます。<br />
<br />
<span id="more-170"></span><br />
<h3 class="title">Apacheとの連携</h3>
Apacheと連携するにはPassengerというRubyライブラリをインストールし、Apacheモジュール（mod_passenger.so）を作成します。<br />
参考：<a href="http://redmine.jp/tech_note/apache-passenger/" target="_blank">Apache上でRuby on Railsアプリケーションを動かす &#8211; Redmine.JP</a><br />
<pre class="brush: bash; title: ;">
# Passengerライブラリをインストールします。
[user@centos ~]$ gem install passenger --include-dependencies

# Apacheモジュールのビルドとインストールを行います。
# ビルドにはAPXSおよびAPRを必要とします。
[user@centos ~]$ passenger-install-apache2-module
...
Enterを押して進みます。

# 最後に設定内容が表示されます。
LoadModule passenger_module /usr/lib/ruby/gems/1.8/gems/passenger-2.2.9/ext/apache2/mod_passenger.so
PassengerRoot /usr/lib/ruby/gems/1.8/gems/passenger-2.2.9
PassengerRuby /usr/bin/ruby

&lt;VirtualHost *:80&gt;
  ServerName www.yourhost.com
  DocumentRoot /somewhere/public    # &lt;-- be sure to point to 'public'!
  &lt;Directory /somewhere/public&gt;
     AllowOverride all              # &lt;-- relax Apache security settings
     Options -MultiViews            # &lt;-- MultiViews must be turned off
  &lt;/Directory&gt;
&lt;/VirtualHost&gt;

# 完了
</pre><br />
<br />
ここではRedmineのインストール先を/usr/local/redmineにしたので、DocumentRootとDirectoryディレクティブのPATHを「/usr/local/redmine/public」に変更します。<br />
httpd.confにPassengerの設定とバーチャルホストの記述を追加してApacheを再起動します。<br />
<pre class="brush: bash; title: ;">
# Apacheを再起動します。
[user@centos ~]$ /etc/init.d/httpd restart
httpd を停止中:                                           [  OK  ]
httpd を起動中:                                           [  OK  ]

# 完了
</pre><br />
<br />
これで任意のバーチャルホストでRedmineを動作させる事が出来ます。<br />
<br />
<h3 class="title">RMagickのインストール</h3>
RedmineはオプションでRMagickを利用してグラフ等の画像を出力出来るので、RMagickをインストールしてみます。<br />
<pre class="brush: bash; title: ;">
# ImageMagickをインストールします。
[user@centos ~]$ yum install ImageMagick ImageMagick-devel
...
Installed:
  ImageMagick.i386 0:6.2.8.0-4.el5_1.1
  ImageMagick-devel.i386 0:6.2.8.0-4.el5_1.1

Complete!
# 完了
</pre><br />
<br />
続いてRMagickをインストールします。<br />
現時点ではyumでインストールできるImageMagickのバージョンが6.2.8なのでRMagick 2系のインストールは出来ません。1系の最終バージョン(v1.15.17)をインストールする事にします。<br />
<pre class="brush: bash; title: ;">
[user@centos ~]$ /usr/local/src

# RMagickがTrueTypeフォントを必要とするのでRPM版をインストールします。
[user@centos src]$ wget http://www.zacharywhitley.com/linux/rpms/fedora/core/6/i386/msttcorefonts-2.0-1.noarch.rpm
[user@centos src]$ rpm -ivh msttcorefonts-2.0-1.noarch.rpm

# TrueTypeという名称でシンボリックリンクを作成します。
[user@centos src]$ ln -s /usr/share/fonts/msttcorefonts /usr/share/fonts/default/TrueType

# RMagickをインストールします。
# -vオプションでバージョン（1.15.17）を指定します。
[user@centos ~]$ gem install rmagick -v 1.15.17 --include-dependencies
...
# 完了
</pre><br />
<br />
<h3 class="title">ログ設定</h3>
RedmineはデフォルトでINFOレベル以上のイベントがログファイルに記録されるようになっています。INFOレベル以上の設定だとアクセスする度に毎回ログが記録され、いつの間にか膨大なログが溜まっているという状況になります。<br />
運用する際はWARNレベル以上のイベントをログファイルに記録するようにします。<br />
<pre class="brush: bash; title: ;">
[user@centos ~]$ vi /usr/local/redmine/config/environments/production.rb
# 以下をログ関連の記述箇所に追記します。
config.logger = Logger.new(config.log_path)
config.logger.level = Logger::WARN

# 保存して完了
</pre><br />
<br />
さらに、ログローテーションの設定を行います。設定内容は任意ですが、「copytruncate」コマンドだけは最低限記述するようにしておきます。<br />
<pre class="brush: bash; title: ;">
# redmine用のログローテーション設定ファイルを新規作成します。
[user@centos ~]$ vi /etc/logrotate.d/redmine
/usr/local/redmine/log/*.log {
    missingok
    notifempty
    compress
    copytruncate
}

# 保存して完了
</pre><br />
<br />
<h3 class="title">その他の設定</h3>
Redmine.JPやRedmine.JP Blogで紹介されている記事の中でRedmineを使い易くするために実施しておくと良いものを挙げてみます。<br />
<ul>
    <li><a href="http://redmine.jp/faq/general/change-help-url-to-gude-ja/" target="_blank">ヘルプの日本語化</a></li>
    <li><a href="http://redmine.jp/faq/wiki/wiki_syntax_ja/" target="_blank">wikiのヘルプを日本語化</a></li>
    <li><a href="http://redmine.jp/faq/issue/send_reminders/" target="_blank">期限日が間近のチケットをメールで通知する</a></li>
    <li><a href="http://blog.redmine.jp/articles/redmine-0_9-url-to-fetch-changesets/" target="_blank">コミットと同時にリポジトリの情報を取得する</a></li>
</ul>
<br />
トラブル等がある場合は「<a href="http://redmine.jp/faq/" target="_blank">FAQ &#8211; Redmine.JP</a>」を見る解決するかもしれませんので参考にしてみてください。</p>
]]></content:encoded>
			<wfw:commentRss>http://labs.qui-no.com/170/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>CentOSにRedmine0.9.2をインストール</title>
		<link>http://labs.qui-no.com/140</link>
		<comments>http://labs.qui-no.com/140#comments</comments>
		<pubDate>Wed, 17 Feb 2010 03:58:53 +0000</pubDate>
		<dc:creator>加藤 雄亮</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://labs.qui-no.com/?p=140</guid>
		<description><![CDATA[
最近のプロジェクト管理ツールの中で人気が高いRedmineの最新版0.9.2をCentOS5.4へインストールしてみたいと思います。
Redmine0.9系ではプロジェクトの階層化やユーザー管理、通知等が改善され、さら [...]]]></description>
			<content:encoded><![CDATA[<p>
最近のプロジェクト管理ツールの中で人気が高いRedmineの最新版0.9.2をCentOS5.4へインストールしてみたいと思います。<br />
Redmine0.9系ではプロジェクトの階層化やユーザー管理、通知等が改善され、さらに使いやすくなっています。<br />
<a href="http://blog.redmine.jp/articles/redmine-0_9-improvements/" target="_blank">Redmine 0.9の変更点 &#8211; Redmine.JP Blog</a><br />
<br />
<img src="http://labs.qui-no.com/uploads/redmine1.jpg" alt="" title="redmine1" width="400" height="78" class="alignnone size-full wp-image-164" />
<br />
※ここではRedmineで利用するデータベースサーバ（MySQL、SQLite等）とメールサーバが構築済みという前提で進めていきます。<br />
<span id="more-140"></span><br />
<h3 class="title">1. 既存Rubyのアンインストール</h3>
Redmineが使用するRubyライブラリはRuby1.8.6以上のバージョンが必要になります。<br />
yumインストールされているRubyのバージョンが古い場合は、一旦アンインストールします。<br />
<pre class="brush: bash; title: ;">
# rubyがインストールされているか確認します。
[user@centos ~]$ yum list installed | grep ruby
ruby.i386                1.8.5-5.el5_4.8                installed
ruby-libs.i386           1.8.5-5.el5_4.8                installed

# yum removeコマンドは依存ファイルも全て削除されてしまう為
# rpm -e --nodepsコマンドでRubyのみをアンインストールします。
[user@centos ~]$ rpm -e --nodeps ruby ruby-libs

# rubyがアンインストールされているか確認します。
[user@centos ~]$ yum list installed | grep ruby

# 完了
</pre><br />
<br />
<h3 class="title">2. Rubyのインストール</h3>
Rubyの最新版1.9系だとRedmineでテンプレートエラーが発生してしまうため、1.8系の最終バージョンをRPMビルドしてインストールします。<br />
現時点ではruby-1.8.7-p249です。<br />
※最新版は<a href="http://www.ruby-lang.org/ja/downloads/" target="_blank">ダウンロードサイト</a>で確認してください。<br />
<pre class="brush: bash; title: ;">
[user@centos ~]$ cd /usr/local/src

# ソースコードをダウンロードします。
[user@centos src]$ wget ftp://ftp.ruby-lang.org/pub/ruby/1.8/ruby-1.8.7-p249.tar.gz

# tarボールを解凍します。
[user@centos src]$ tar zxvf ruby-1.8.7-p249.tar.gz

# Makeして実行ファイルを生成します。
[user@centos src]$ cd ruby-1.8.7-p249
[user@centos ruby-1.8.7-p249]$ ./configure --prefix=/usr
[user@centos ruby-1.8.7-p249]$ make

# RPMパッケージングします。
# checkinstallは別途yum install checkinstall でインストールしてください。
[user@centos ruby-1.8.7-p249]$ checkinstall --fstrans=no
...
いくつか質問されますが、全て[Enter]で進めます。

以下のメッセージが表示されたら「R」を回答します。
Slackware [S], RPM [R] or Debian [D]? R　←　RPMを回答
...

**********************************************************************

 Done. The new package has been saved to

 /usr/src/redhat/RPMS/i386/ruby-1.8.7-p249-1.i386.rpm
 You can install it in your system anytime using:

      rpm -i ruby-1.8.7-p249-1.i386.rpm

**********************************************************************

# RPMパッケージをインストールします。
[user@centos ~]$ rpm -ivh /usr/src/redhat/RPMS/i386/ruby-1.8.7-p249-1.i386.rpm

# インストールされたRubyを確認します。
[user@centos ~]$ ruby -v
ruby 1.8.7 (patchlevel 249) [i686-linux]

# 完了
</pre><br />
<br />
<h3 class="title">3. RubyGemsのインストール</h3>
Rubyのパッケージ管理システムであるRubyGemsをインストールします。<br />
※最新版は<a href="http://rubyforge.org/frs/?group_id=126&amp;release_id=37073" target="_blank">ダウンロードサイト</a>で確認してください。<br />
<pre class="brush: bash; title: ;">
[user@centos ~]$ cd /usr/local/src

# ソースコードをダウンロードします。
[user@centos src]$ wget http://rubyforge.org/frs/download.php/60718/rubygems-1.3.5.tgz

# tarボールを解凍します。
[user@centos src]$ tar zxvf rubygems-1.3.5.tgz

# セットアップを実行します。
[user@centos src]$ ruby rubygems-1.3.5/setup.rb

# インストールされたRubyGemsを確認します。
[user@centos ~]$ gem -v
1.3.5

# 念のため最新版にアップデートします。
# 以降はこのコマンドで最新版にアップデートできます。
[user@centos ~]$ gem update --system
Updating RubyGems
Nothing to update

# 完了
</pre><br />
<br />
<h3 class="title">4. Rubyライブラリのインストール</h3>
Redmineが使用するフレームワークやその他のパッケージをインストールします。<br />
<br />
<strong>Railsフレームワーク</strong><br />
<pre class="brush: bash; title: ;">
[user@centos ~]$ gem install rails --include-dependencies
...
# しばらく時間がかかりますが、そのままにしておきます。
# 完了
</pre><br />
<br />
<strong>MySQL用のライブラリ</strong><br />
RedmineのデータベースにMySQLを使用します。<br />
SQLiteを使用する場合は「sqlite3-ruby」をインストールします。<br />
※テスト用途の場合はSQLite、運用ではMySQLを利用する方が良いです。<br />
<pre class="brush: bash; title: ;">
[user@centos ~]$ gem install mysql --include-dependencies
...
# 完了
</pre><br />
<br />
<h3 class="title">5. データベース作成</h3>
MySQLを利用する場合は、Redmine用のデータベースを作成します。<br />
ここでは、データベース（redmine）を作成し、専用ユーザー（redmine_user）にredmineデータベースの全ての操作権限を付与しておきます。<br />
<pre class="brush: bash; title: ;">
[user@centos ~]$ mysql -u root -p
*******　←　パスワード

# redmineデータベースを作成します。
mysql&gt; CREATE DATABASE `redmine` CHARACTER SET utf8;
Query OK, 1 row affected (0.00 sec)

# 作成したデータベースを確認します。
# ※データベース名は任意の値に変更してください。
mysql&gt; SHOW DATABASES;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| redmine            |　←　作成したデータベース
+--------------------+
3 rows in set (0.01 sec)

# redmineデータベースを操作するユーザーを作成します。
# ユーザー名：redmine_user、パスワード：redmine_password
# ※ユーザー名、パスワードは任意の値に変更してください。
mysql&gt; GRANT ALL PRIVILEGES ON `redmine`.`*` TO 'redmine_user'@'localhost' IDENTIFIED BY 'redmine_password';
Query OK, 1 row affected (0.00 sec)

mysql&gt; \q

# 完了
</pre><br />
<br />
<h3 class="title">6. Redmineのインストール</h3>
Redmineは最新版の0.9.2をインストールします。<br />
※最新版は<a href="http://rubyforge.org/frs/?group_id=1850" target="_blank">ダウンロードサイト</a>で確認してください。<br />
<pre class="brush: bash; title: ;">
[user@centos ~]$ cd /usr/local/src

# ソースコードをダウンロードします。
[user@centos src]$ wget http://rubyforge.org/frs/download.php/69052/redmine-0.9.2.tar.gz

# tarボールを解凍します。
[user@centos src]$ tar zxvf redmine-0.9.2.tar.gz

# ソースコードを配置します。※場所は任意
# ここでは、/usr/local/redmine-0.9.2 にソースを配置し、
# /usr/local/redmine でアクセスできるようにシンボリックリンクを作成しておきます。
[user@centos src]$ mv redmine-0.9.2 /usr/local/
[user@centos src]$ ln -s /usr/local/redmine-0.9.2 /usr/local/redmine

# 完了
</pre><br />
<br />
<h3 class="title">7. Redmineの設定</h3>
<strong>データベースの環境設定</strong><br />
<pre class="brush: bash; title: ;">
# 設定ファイルを作成します。
[user@centos ~]$ mv /usr/local/redmine/config/database.yml.example \
/usr/local/redmine/config/database.yml

# データベース設定を編集します。
# 環境に応じて項目を変更します。
[user@centos ~]$ vi /usr/local/redmine/config/database.yml
# MySQLを使用する場合
production:
  adapter: mysql
  database: redmine　←　作成したデータベース名
  host: localhost
  username: redmine_user　←　作成したユーザー名
  password: redmine_password　←　作成したパスワード
  encoding: utf8

# SQLiteを使用する場合
production:
  adapter: sqlite3
  database: db/redmine.db

# 保存して完了
</pre><br />
<br />
<strong>メールの環境設定</strong><br />
<pre class="brush: bash; title: ;">
# 設定ファイルを作成します。
[user@centos ~]$ mv /usr/local/redmine/config/email.yml.example \
/usr/local/redmine/config/email.yml

# メール設定を編集します。
# 環境に応じて項目を変更します。
[user@centos ~]$ vi /usr/local/redmine/config/email.yml
production:
  delivery_method: :smtp
  smtp_settings:
    address: localhost　←　自サーバ内にメールサーバがある場合
    port: 25
    domain: example.net　←　ドメイン名
    #authentication: :login　　　　　　←認証が必要無い場合はコメントアウト
    #user_name: &quot;redmine@example.net&quot;　←認証が必要無い場合はコメントアウト
    #password: &quot;redmine&quot;　　　　　　　 ←認証が必要無い場合はコメントアウト

# 保存して完了
</pre><br />
<br />
<strong>環境設定</strong><br />
<pre class="brush: bash; title: ;">
# 30文字以上のランダム文字列を生成します。
# mkpasswdはexpectパッケージがインストールされている必要があります。
[user@centos ~]$ mkpasswd -l 30 -C 0 -s 0
hokmgzmqglnjes2pvkkxtdmpb2ynwr

# 設定ファイルを作成します。
[user@centos ~]$ mv /usr/local/redmine/config/additional_environment.rb.example \
config/additional_environment.rb

# 環境設定ファイルを編集します。
[user@centos ~]$ vi /usr/local/redmine/config/additional_environment.rb
# 以下を追加します。
# :secret の部分は生成したランダム文字列を記述します。
config.action_controller.session = { :key =&gt; &quot;_myapp_session&quot;, :secret =&gt; &quot;hokmgzmqglnjes2pvkkxtdmpb2ynwr&quot; }

# 保存して完了
</pre><br />
<br />
<h3 class="title">8. Redmineの初期化</h3>
データベースの初期化を行います。<br />
<pre class="brush: bash; title: ;">
[user@centos ~]$ (cd /usr/local/redmine; rake db:migrate RAILS_ENV=production)
(in /usr/local/redmine-0.9.2)
==  Setup: migrating ========================================================
...

# 完了
</pre><br />
<br />
<h3 class="title">9. Redmineの起動</h3>
<pre class="brush: bash; title: ;">
# サーバを起動します。
[user@centos ~]$ /usr/local/redmine/script/server -e production
=&gt; Booting WEBrick
=&gt; Rails 2.3.5 application starting on http://0.0.0.0:3000
=&gt; Call with -d to detach
=&gt; Ctrl-C to shutdown server
...

# サーバを終了する場合は Ctrl-C でシャットダウンします。
</pre><br />
<br />
デフォルトではポート番号3000番を使用してアクセスする事が出来ます。<br />
例：http://example.net:3000/<br />
<br />
初めてログインする場合は、以下でログインします。<br />
ログイン：admin<br />
パスワード：admin<br />
<a href="http://labs.qui-no.com/uploads/redmine2.jpg"><img class="alignnone size-medium wp-image-151" title="redmine2" src="http://labs.qui-no.com/uploads/redmine2-300x101.jpg" alt="" width="300" height="101" /></a><br />
<br />
ログイン後、右上の「My account」で言語を「Japanese（日本語）」に変更すると日本語のインターフェースになります。<br />
<a href="http://labs.qui-no.com/uploads/redmine3.jpg"><img class="alignnone size-medium wp-image-152" title="redmine3" src="http://labs.qui-no.com/uploads/redmine3-300x245.jpg" alt="" width="300" height="245" /></a><br />
<br />
とりあえずログイン後の設定として「管理」→「設定」で全体的な設定を行います。<br />
<ul>
	<li>「既定の言語」を「日本語」に。</li>
	<li>「送信元メールアドレス」を適宜変更。</li>
	<li>「認証が必要」を有効に。</li>
	<li>「ユーザは自分で登録できる」を無効に。</li>
</ul>
参考：<a href="http://redmine.jp/tech_note/install/" target="_blank">Redmineのインストール &#8211; Redmine.JP</a><br />
<br />
<br />
<br />
以上で、基本的なインストールが完了しました。<br />
次はApacheとの連携、運用などの設定をやりたいと思います。<br />
<a href="http://labs.qui-no.com/170">Redmine0.9.2の設定と運用</a></p>
]]></content:encoded>
			<wfw:commentRss>http://labs.qui-no.com/140/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

