Debian Jessieにおけるdebパッケージを利用したRedmine環境構築方法のまとめ
2015-04-27に、Debian 8.0 Jessieがリリースされた。
Debian Wheezyにおいて、パッケージを利用したRedmine環境を運用していたため、
その環境のアップグレードを試みた。
しかし、メジャーアップグレード自体にトラブルが多く、Jessieを新規にインストールし、
Redmine環境を構築しなおすこととなった。
その際におこなった作業、Redmineをパッケージを用いて新規に導入する方法を、メモとして残しておく。
本記事では、Debian Jessieにおいて公式リポジトリに用意されているパッケージのみを
用いたRedmine環境の構築方法を述べる。
方針
複雑な運用はしない。
手っ取り早く運用できるRedmine環境の構築を目指す。
環境
Debian Jessie 8.0 (x86_64, kernel: 3.16.7-ckt9-3~deb8u1)
Redmine (3.0~20140825-5)
redmine-pgsql (3.0~20140825-5)
redmine-sqlite (3.0~20140825-5)
Apache (2.4.10-10)
libapache2-mod-passenger (4.0.53-1)
PostgreSQL (9.4.2)
SQLite (3.8.7.1-1+deb8u1)
Ruby (2.1.5p273)
設定手順
設定は、以下の手順でおこなう。
必要なソフトウェアの導入
Redmineおよび利用するDBの設定
Apacheの設定
サービスの起動
動作確認
Redmineプラグインの導入
必要なソフトウェアの導入
まず、Redmine環境を構築するために必要なソフトウェアの導入をおこなう。
必要なソフトウェアは、Debianの公式リポジトリに用意されているパッケージを用いてインストールする。
今回、Redmineのデータベースとして、2種類の異なるDBMSの導入を想定した。
利用するDBMSは、SQLiteとPostgreSQLである。
SQLiteとPostgreSQLによって、作業が一部異なる点に注意する。
以下のコマンドを実行し、必要なソフトウェアをインストールする。
SQLiteの場合
# aptitude install sqlite3 redmine redmine-sqlite apache2 libapache2-mod-passenger
PostgreSQLの場合
# aptitude install postgresql redmine redmine-pgsql apache2 libapache2-mod-passenger
redmineパッケージをインストールする際、データベースの設定に関するダイアログが表示される。
データベースに関する設定は後でおこなうため、このダイアログでは<いいえ>を選択する。
以上の作業で、必要なソフトウェアの導入は完了である。
Redmineおよび利用するDBの設定
次に、Redmineおよび利用するDBMSの設定をおこなう。
設定は、下記のコマンドを実行しておこなう。
# dpkg-reconfigure redmine
上記コマンドを実行後、RedmineとDBMSの設定を半自動でおこなうダイアログが表示される。
ダイアログに対し、以下の設定項目を入力していく。
SQLiteの場合
redmine/instances/defaultが使うデータベースの種類: sqlite3
redmine/instances/default用のストレージディレクトリ: /var/lib/dbconfig-common/sqlite3/redmine/instances/default (デフォルト)
redmine/instances/default用のデータベース名: redmine_default (デフォルト)
redmineのデフォルト言語: ja (デフォルト)
redmine/instances/defaultが使うデータベースの種類: pgsql
redmine/instances/defaultのPostgreSQデータベースに接続する方法: UNIXソケット (デフォルト)
PostgreSQL管理者の認証方法: ident (デフォルト)
PostgreSQLユーザの認証方法: パスワード (デフォルト)
データベースの管理者権限を持つユーザ名: postgres (デフォルト)
redmine/instances/default用のユーザ名: redmine_default (デフォルト)
redmine/instances/default用のデータベース名: redmine_default (デフォルト)
redmineのデフォルト言語: ja (デフォルト)
以上の作業で、RedmineとDBMSの設定は完了である。
Apacheの設定
Redmineを稼働させるために、WebサーバApacheの設定をおこなう。
設定ファイルは、Redmineのドキュメントディレクトリにサンプルが用意されている。
今回は、そのサンプルをそのまま利用していく。
以下のコマンドを実行し、サンプル設定ファイルを、Apacheの設定ディレクトリへコピーする。
# cp /usr/share/doc/redmine/example/apache2-passenger-host.conf /etc/apache2/sites-available/redmine.conf
redmine.confは、基本的には編集する必要は無い。
ただし、redmine.confは、デフォルトの状態だと"Allow from all"となっている点に注意する。
次に、/var/lib/redmine/default以下に、redmineのインストールディレクトリをpassengerとしてシンボリックリンクしておく。
以下のコマンドを入力する。
# ln -s /usr/share/redmine /var/lib/redmine/default/passenger
以上の作業で、Apacheの設定は完了である。
サービスの起動
Redmineの有効化、および既存のWebサイトの無効化をおこなう。
以下のコマンドを入力する。
# a2ensite redmine.conf
# a2dissite 000-default.conf
次に、各種サービスを有効化・起動する。
サービスの起動は、以下のコマンドでおこなう。
SQLiteの場合
# systemctl enable apache2.service
# !:s/enable/restart/
PostgreSQLの場合
# systemctl enable postgresql.service
# !:s/enable/restart/
# !-2:s/postgresql/apache2/
# !:s/enable/restart/
以上の作業で、サービスの起動は完了である。
動作確認
最後に、Redmineが正常に動作しているかを確認する。
確認は、GUI上のブラウザからおこなう。
ブラウザから http://localhost/ へアクセスし、Redmineのトップページが表示されれば、導入は完了である。
以降、Redmine.JPの運用ガイド(http://redmine.jp/guide/)等を参照し、Redmineの運用をおこなっていく。
Redmineプラグインの導入
Redmineでは、第三者が作成したプログラム、プラグインを導入することで、標準では提供されていない機能を
追加することが可能である。
今後、プラグインを利用することを考慮し、導入方法も述べる。
プラグインの導入は、基本的に以下の手順でおこなう。
pluginsディレクトリの作成 (pluginsディレクトリが既に存在していれば、実行しなくても良い)
プラグインファイルの導入
rakeの実行
Apacheの再起動
具体的には、下記のコマンドを実行すれば良い。
# mkdir /usr/share/redmine/plugins
# cd /usr/share/redmine/plugins
# git clone <http://repository.of.plugin>
# cd /usr/share/redmine
# rake redmine:plugins:migrate RAILS_ENV=production
# systemctl restart apache2.service
今回は、例として、任意のプロフィール画像を利用できるようにするプラグイン、
redmine_local_avatarsの導入方法を述べる。
redmine_local_avatarsは、GitHubにて多数のリポジトリが公開されている。
今回構築したRedmine(3.0~20140825-5)で動作するリポジトリは、次のものである。
https://github.com/djibythiaw/redmine_local_avatars
プラグインの導入は、gitを用いておこなう。
gitがインストールされていない場合は、以下のコマンドでgitを導入する。
# aptitude install git
gitを導入した後、以下のコマンドでredmine_local_avatarsの導入をおこなう。
# mkdir /usr/share/redmine/plugins
# cd /usr/share/redmine/plugins
# git clone https://github.com/djibythiaw/redmine_local_avatars.git
# cd /usr/share/redmine
# rake redmine:plugins:migrate RAILS_ENV=production
# systemctl restart apache2.service
以上の作業で、プラグインの導入は完了である。
プラグインが正常に導入されたかどうかを確認したい場合は、Redmineのプラグイン管理ページを見る。
具体的には、管理者権限を持つユーザアカウントでRedmineへログインし、メニューから"管理"→"プラグイン"を選択すればよい。
参考にしたもの
Redmineをapt-getでインストール - Days of Speed(2013-10-20)
http://www.nofuture.tv/diary/20131020.html (2015-06-04T12:44:24 参照)
→ Debian Wheezyにおけるdebパッケージを利用したRedmine環境の構築方法が書かれている記事。
今回、この記事を執筆するにあたり、設定の大部分をこちらの記事を参照した。
Wheezyで構築したい場合、こちらの記事が大いに参考になる。プラグインのインストール方法 - r-labs
http://www.r-labs.org/projects/r-labs/wiki/プラグインのインストール方法 (2015-06-04T12:55:52 参照)
→ Redmineプラグインのインストール方法が書かれている記事。
この記事のプラグイン導入部分を執筆するにあたり、大いに参考にした。
Redmineは、Debian Jessieのパッケージのバージョン(3.0~20140825-5)と、Wheezyのバージョン(1.4.4+dfsg1-2+deb7u1)では、 プラグインの導入方法が異なることに留意する。
雑感
試してはいないけれど、MySQLを利用する場合でも、ほぼ同じような手法で導入できるはず。
DebianのStableバージョンでは、パッケージのアップデートは基本的にセキュリティホール・バグのパッチのみ。
なので、当分の間は、Redmineを安定して運用できるはず。
ただし、プラグインを大量に導入した場合、話は違ってくるかも。
Asciidoc + Cryogen、お手軽に記事が書けて、超便利。