« LycheeのWebページに住友電装株式会社のRedmine運用事例があった | トップページ | Redmineは帳票ワークフローシステムであるというアイデア »

2015/06/20

Redmine3.0.3をWindows7にインストール時はJRubyを使うと上手くいく


Redmine3.0をWindows7にインストールする手順をメモ。

【参考】
RedmineをWindowsにインストールする手順: 9th Ghost

Windows の Ruby で native extension を使う - akishin999の日記

Azure Web Apps 上で JRuby を使って Redmine 3.0.3 を動かす - しばやん雑記

Redmine2.5をwar化してTomcatで動かしてみた~warbler | Scimpr Blog

Redmine 3.0.0をJRubyで動かす→ダメだった… | u6k.log()

akipiiさんはTwitterを使っています: "Windows のインストールはBitnami 以外はあきらめた方が良いです。RT @mzsm_j: Redmineのインストール方法を調べるたびに「面倒くさいしもういいや…」って感じになってる"

【1】結論を言うと、Windows7にRedmine3.0.xをインストールするのは失敗した。
すごくハードルが高くなった。

Rails4.2をインストールするのに、Development Kit がいるみたいだが、いつも失敗する。
Ruby2.2もダメで、Ruby1.9に落としても、僕の環境ではうまくいかなかった。
gemのインストールでいつも失敗する。

【2】CRuby+Windowsの環境はなかなか作れないが、JRuby+Windowsの環境はさくっと作れた。
その時のメモを残しておく。
但し、JavaVM、JRubyはできるだけ最新バージョンにしておくと良いみたい。
古いバージョンのJRubyでは、インストールに失敗する時がある。

【2-1】セットアップ情報

OS:Windows7 SP2 64bit
JRuby:jruby1.7.20.1 (1.9.3p551) 2015-06-10 d7c8c27 on Java HotSpot(TM) 64-Bit Server VM 1.8.0_11-b12 +jit [Windows 7-amd64]
XAMP:1.8.3

+ Apache 2.4.4
+ MySQL 5.5.32 (Community Server)
+ PHP 5.5.11 (VC11 X86 32bit thread safe) + PEAR
+ phpMyAdmin 4.0.4
+ OpenSSL 1.0.1e
+ ADOdb 5.18
+ Mercury Mail Transport System v4.62 (not included in the portable version)
+ FileZilla FTP Server 0.9.41 (not included in the portable version)
+ Webalizer 2.23-04 (not included in the portable version)
+ Strawberry Perl 5.16.1.1 Portable
+ Tomcat 7.0.41
+ XAMPP Control Panel Version 3.2.1 by hackattack142 (Great Thanks!!))
See: http://www.apachefriends.org/f/viewtopic.php?f=16&t=46743
+ XAMPP Security
+ XAMPP mailToDisk 1.0 (write emails via PHP on local disk in \mailoutput. Activated in the php.ini as mail default.)

Redmine Environment:
Redmine version 3.0.3.stable
Ruby version 1.9.3-p551 (2015-06-10) [java]
Rails version 4.2.1
Environment production
Database adapter MySQL

【2-2】Redmine on JRubyのインストール手順

事前にJRubyをPATHに登録しておく。

mysql.exe -uroot
create database redmine303 character set utf8;

redmine/database.yml
を開き、database: redmine303 へ修正

jgem install bundler --no-rdoc --no-ri

jruby -S gem install activerecord-jdbcmysql-adapter
jruby -S gem install activerecord-jdbcpostgresql-adapter

cd %REDMINE_ROOT%
jruby -S bundle install --without test development sqlite3

次のメッセージが出るが無視する。

io/console not supported; tty will not be manipulated
Using rake 10.4.2
Using i18n 0.7.0
Using json 1.8.3
Using minitest 5.7.0
Using thread_safe 0.3.5
Using tzinfo 1.2.2
Using activesupport 4.2.1
Using builder 3.2.2
Using erubis 2.7.0
Using nokogiri 1.6.6.2
Using rails-deprecated_sanitizer 1.0.3
Using rails-dom-testing 1.0.6
Using loofah 2.0.2
Using rails-html-sanitizer 1.0.2
Using actionview 4.2.1
Using rack 1.6.2
Using rack-test 0.6.3
Using actionpack 4.2.1
Using globalid 0.3.5
Using activejob 4.2.1
Using mime-types 2.6.1
Using mail 2.6.3
Using actionmailer 4.2.1
Using actionpack-action_caching 1.1.1
Using actionpack-xml_parser 1.0.2
Using activemodel 4.2.1
Using arel 6.0.0
Using activerecord 4.2.1
Using activerecord-jdbc-adapter 1.3.16
Using jdbc-mysql 5.1.35
Using activerecord-jdbcmysql-adapter 1.3.16
Using coderay 1.1.0
Using thor 0.19.1
Using railties 4.2.1
Using jquery-rails 3.1.3
Using net-ldap 0.3.1
Using protected_attributes 1.0.9
Using ruby-openid 2.3.0
Using rack-openid 1.4.2
Using bundler 1.10.4
Using sprockets 3.2.0
Using sprockets-rails 2.3.1
Using rails 4.2.1
Using rbpdf 1.18.5
Using request_store 1.0.5
Using tzinfo-data 1.2015.5
Bundle complete! 27 Gemfile dependencies, 46 gems now installed.
Gems in the groups test, development, sqlite3 were not installed.
Use `bundle show [gemname]` to see where a bundled gem is installed.

jruby -S bundle exec rake generate_secret_token

次のメッセージが出るが無視する。

io/console not supported; tty will not be manipulated
NOTE: ActiveRecord 4.2 is not (yet) fully supported by AR-JDBC, please help us f
inish 4.2 support - check http://bit.ly/jruby-42 for starters

jruby -S rake db:migrate RAILS_ENV=production

jruby bin/rails server webrick -e production

新しいバージョンのRailsでは、Webrickの起動方法が「script/rails」から「bin/rails」変わったみたい。
次のメッセージが出るが無視する。

io/console not supported; tty will not be manipulated
NOTE: ActiveRecord 4.2 is not (yet) fully supported by AR-JDBC, please help us f
inish 4.2 support - check http://bit.ly/jruby-42 for starters
=> Booting WEBrick
=> Rails 4.2.1 application starting in production on http://localhost:3000
=> Run `rails server -h` for more startup options
=> Ctrl-C to shutdown server

http://localhost:3000/
にadmin/adminでログインしてOK

【2-2】但し、2015/6時点のJRubyには、@marutosijpさんの指摘のように問題がある。

Toshi MARUYAMAさんはTwitterを使っています: ".@shibayan @akipii JRubyのARがサポートしてないのでサポートしてません。 https://t.co/WG86r9ejkt"

akipiiさんはTwitterを使っています: "@marutosijp @shibayan 「JRubyはサポートしていない」のが正しいわけですね。own my Riskということですね。"

実際、Redmineのビルド状況を見ると、Ver3.0.3はJRubyに正式対応していない。
つまり、JRuby+Redmine3.0.xは自己責任になる。

Redmine build status

【2-3】ついでに、warbleを使って、redmine.warを作ってTomcatにデプロイしたら、成功した。
Ver3.0.3でも、RedmineをWar化できるみたい。
但し、Rails4.2でのAR-JDBCの問題は残っている。

事前に、Redmine3.0.3をインストール済み

gem install warbler

cd %REDMINE_ROOT%
warble config

%REDMINE_ROOT%\config\warble.rb
を修正

config.dirs = %w(app config db lib log script vendor tmp)
config.bundle_without = ["development", "test"]

warble

%REDMINE_ROOT%にredmine.warが作られる

%XAMPP%\tomcat\webappsへredmine.warを配備する

XAMPコンパネからTomcat起動

http://localhost:8080/redmine
でログインできた

【3】でも、Windows上のRubyはかなり手ごわい。
たぶん、RubyはMacやUnix上で使うもの、という前提があるのだろう。

もはや、Windows上では、BitnamiのRedmineをインストールするしか方法がないのかもしれない。

【追記】
2016年前半時点では、「Redmine does not support JRuby because some gems do not support Rails 4.2.」という記載がある。あくまでも自己責任で。

RedmineInstall - Redmine

|

« LycheeのWebページに住友電装株式会社のRedmine運用事例があった | トップページ | Redmineは帳票ワークフローシステムであるというアイデア »

Redmine」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



« LycheeのWebページに住友電装株式会社のRedmine運用事例があった | トップページ | Redmineは帳票ワークフローシステムであるというアイデア »