Redmine を GlassFish 上で動かす - Ruby on Rails で書かれたプロジェクト管理ツールPosted by arungupta on May 23, 2008 at 06:08 AM Redmine (日本語サイト)は Ruby on Rails フレームワークベースの Web アプリケーションとして実装されている、柔軟なプロジェクト管理用のツールです。Redmine には複数プロジェクトの管理機能、ロールベースの管理機能、プロジェクトごとに管理できる forums/wikis/SCM といった "ユージュアル・サスペクツ (※訳者注:プロジェクト管理ツールに通常期待されるような一般的な機能)" から LDAP 認証、他言語対応といったエンタープライズ向けの機能まで、とても多彩な機能が備わっています。 GlassFish v3 はモジュラー性・拡張性が高く、Rails アプリケーションを特に手を加えることなく配備することが可能となっています(War 化する必要もありません)。このブログでは Redmine をGlassFish 上に配備する手順について説明し、あわせていくつかのスクリーンショットをお見せします。 1. 次のコマンドを実行し、 Redmine の安定版リリースをチェックアウトします。 ~/testbed/redmine >svn co http://redmine.rubyforge.org/svn/branches/0.7-stable redmine-0.7 ※訳者注:開発中の最新バージョンを入手したい場合は、以下のように実行してください。 redmine> svn checkout http://redmine.rubyforge.org/svn/trunk/ 2. データベースの設定
~/testbed/redmine >sudo mysqld_safe --user root Starting mysqld daemon with databases from /usr/local/mysql/data
~/testbed/redmine/redmine-0.7 >../jruby-1.1.1/bin/jruby -S rake db:create (in /Users/arungupta/testbed/redmine/redmine-0.7) ※実際には redmine\config\database.yml が database.yml.example という名前になっているため、これを database.yml とRename する必要があります。
~/testbed/redmine/redmine-0.7 >../jruby-1.1.1/bin/jruby -S rake db:migrate (in /Users/arungupta/testbed/redmine/redmine-0.7) == 1 Setup: migrating ========================================================= -- create_table("attachments", {:force=>true}) -> 0.2840s -- create_table("auth_sources", {:force=>true}) -> 0.0540s -- create_table("custom_fields", {:force=>true}) -> 0.0430s -- create_table("custom_fields_projects", {:id=>false, :force=>true}) -> 0.0080s -- create_table("custom_fields_trackers", {:id=>false, :force=>true}) -> 0.0500s . . . == 90 ChangeVersionsNameLimit: migrating ====================================== -- change_column(:versions, :name, :string, {:limit=>nil}) -> 0.0220s == 90 ChangeVersionsNameLimit: migrated (0.0220s) ============================= == 91 ChangeChangesetsRevisionToString: migrating ============================= -- change_column(:changesets, :revision, :string, {:null=>false}) -> 0.0210s == 91 ChangeChangesetsRevisionToString: migrated (0.0230s) ==================== == 92 ChangeChangesFromRevisionToString: migrating ============================ -- change_column(:changes, :from_revision, :string) -> 0.0130s == 92 ChangeChangesFromRevisionToString: migrated (0.0150s) =================== 3. GlassFish v3 のダウンロード / インストールおよび設定
JRUBY_HOME="/Users/arungupta/testbed/redmine/jruby-1.1.1" 4. Redmine の配備: ~/testbed/redmine >./glassfishv3-tp2/glassfish/bin/asadmin deploy redmine-0.7 Command deploy executed successfully. ... GlassFish のコンソールには次のように表示されます: May 21, 2008 4:58:30 PM com.sun.enterprise.rails.RailsDeployer registerAdapter INFO: Loading application redmine-0.7 at /redmine-0.7 May 21, 2008 4:58:30 PM INFO: Starting Rails instances May 21, 2008 4:58:37 PM SEVERE: JRuby limited openssl loaded. gem install jruby-openssl for full support. http://wiki.jruby.org/wiki/JRuby_Builtin_OpenSSL May 21, 2008 4:58:42 PM com.sun.grizzly.jruby.RubyObjectPool$1 run INFO: Rails instance instantiation took : 11979ms May 21, 2008 4:58:42 PM com.sun.enterprise.v3.deployment.DeployCommand execute INFO: Deployment of redmine-0.7 done is 12091 ms これでアプリケーションを使う準備は完了です!私が試してみた時のスクリーンショットをいくつかお見せしましょう。 Cannot resolve external resource into attachment. Cannot resolve external resource into attachment. なお、Rails powered by the GlassFish Application Server (英文)には、 Ruby-on-Rails の伝統的な配備モデルに変わって GlassFish を採用すべき理由が余すところなく説明されています。 日本語翻訳: Kana |