RedmineをJettyで動かす覚え書き。
Rails系アプリもこれで動くはず。。。
RedmineのためにMySQLを入れたくないので、今回はSQLiteを使用する。
環境準備
下記参照(これを書いている時点のバージョンは1.5.6)
http://jruby.org/
gemsのダウンロードは下記から
http://rubyforge.org/frs/?group_id=126&release_id=9501
RailsをGemから入れます。
jruby -S gem install rails
- SQLite3のインストール
SQliteのJDBCドライバとActiveRecoardのAdapterをgemからインストール
jruby -S gem install jdbc-sqlite3 jruby -S gem install activerecord-jdbcsqlite3-adapter
- Jettyのダウンロード&インストール
★下記参照
http://www.eclipse.org/jetty/
- Jettyの設定
webdefault.xmlの設定 dirAllowedをFalseに
この設定を行わないとRedmineが正しく表示されません。#フックされない。
<init-param> <param-name>dirAllowed</param-name> <param-value>false</param-value><!-- 無効にします。 --> </init-param>
【Warの準備】
Redmineのダウンロード
SVNから落としてみました。
$ svn checkout http://redmine.rubyforge.org/svn/branches/1.0-stable redmine
Redmineの設定
- database.ymlの設定
production:
adapter: jdbcsqlite3
database: db/development.sqlite3
timeout: 5000
- セッション暗号化用鍵の生成
jruby -S rake generate_session_store
- データベースのマイグレーション
jruby -S rake db:migrate RAILS_ENV=production jruby -S rake redmine:load_default_data RAILS_ENV=production
Warbleのインストール
jruby -S gem install warbler
- Warbleの設定をします。
まず下記コマンドを実行しconfingファイルを作成します。
jruby -S warble config
適当なエディタで編集します・
vim config config/warble.rb
変更箇所は下記の通り
#config.dirs = %w(app config lib log vendor tmp) config.dirs = %w(app config lib log vendor tmp extra files lang db) # config.gems += ["activerecord-jdbcmysql-adapter", "jruby-openssl"] config.gems += ["activerecord-jdbcsqlite3-adapter", "jruby-openssl"]
Jettyにインストール
作成したwarファイルをJettyにデプロイして完了です。