Redmine を ポータブル化してUSBで持ち運べるようにした

0.目的

インストール無しにRedmineをUSBなどに入れて、どこでも動かせるようにする。なお、Rubyについては全くわからない人なので、理解不足なところはご容赦を。

とりあえず起動までできたけど、時間がかかりすぎて動作確認ができてません。動かなくてもご容赦を

2.環境

以下、2021/2/27 時点で最新のバージョンのもの

OS Windows 10 Pro 64bit
JVM jdk-15.0.2
Redmine 4.1.1
JRuby 9.2.15.0
SQLite 3.34.1

3.必要なものをダウンロード

以下必要なものをダウンロードする

<https://www.oracle.com/java/technologies/javase-jdk15-downloads.html>

  • Redmin 4.1.1 : redmine-4.1.1.zip をダウンロードする

<https://www.redmine.org/projects/redmine/wiki/Download>

  • JRuby 9.2.15.0 : JRuby 9.2.15.0 Binary .zip をダウンロードする

<https://www.jruby.org/download>

<http://www.imagemagick.org/script/download.php>

<https://www.sqlite.org/download.html>

redmine-4.1.1.zip を解凍する。以降 $REDMINE_BASE$ とする。

この $REDMINE_BASE$ の中に jdk / JRuby / SQLite / imageMagick をフォルダ単位で突っ込む

ちょうど以下のような感じになる。

0228

コマンドプロンプトを立ち上げ REDMINE_BASE に移動する。その後以下のコマンドを実行し、PATHを通しておく

set REDMINE_BASE=%CD%
set JAVA_HOME=%REDMINE_BASE%\jdk
set SQLITE_HOME=%REDMINE_BASE%\sqlite
set IMAGICK_HOME=%REDMINE_BASE%\ImageMagick
set JRUBY_HOME=%REDMINE_BASE%\jruby
set PATH=%PATH%;%JAVA_HOME%\bin
set PATH=%PATH%;%JRUBY_HOME%\bin

念の為 PATH が通っていることを確認する。それぞれバージョンが出てくればOK

java -version
jruby -v

4.redmine/Gemfileの設定

$REDMINE_BASE$/redmine に移動し Gemfile を開く。その後以下のように変更/追記して保存する

  • racc と jdbcsqlite3-adapter を rbpdf の下に追記する (raccが無いとダメ)
gem "rbpdf", "~> 1.20.0"
↓
gem "rbpdf", "~> 1.20.0"
gem "racc"
gem "activerecord-jdbcsqlite3-adapter"
  • tzinfo-data の余計な文字を削る
# Windows does not include zoneinfo files, so bundle the tzinfo-data gem
gem 'tzinfo-data', platforms: [:mingw, :x64_mingw, :mswin]
↓
# Windows does not include zoneinfo files, so bundle the tzinfo-data gem
gem 'tzinfo-data'
  • redcarpetをコメント (JRubyでは動かないため)
# Optional Markdown support, not for JRuby
group :markdown do
  gem "redcarpet", "~> 3.5.0"
end
↓
# Optional Markdown support, not for JRuby
# group :markdown do
#   gem "redcarpet", "~> 3.5.0"
# end

5.redmine/DBの設定

$REDMINE_BASE$/redmine/config に移動し database.yml.example をコピーし database.yml に変更後、テキストエディタで開き、以下のように変更していく

  • Production/development/test を全てSQLite(JDBC接続) に変更する
production:
  adapter: mysql2
  database: redmine
  host: localhost
  username: root
  password: ""
  # Use "utf8" instead of "utfmb4" for MySQL prior to 5.7.7
  encoding: utf8mb4
↓
production:
  adapter: jdbcsqlite3
  database: db/redmine_prod.db
  encoding: utf8
development:
  adapter: mysql2
  database: redmine_development
  host: localhost
  username: root
  password: ""
  # Use "utf8" instead of "utfmb4" for MySQL prior to 5.7.7
  encoding: utf8mb4
↓
development:
  adapter: jdbcsqlite3
  database: db/redmine_dev.db
  encoding: utf8
test:
  adapter: mysql2
  database: redmine_test
  host: localhost
  username: root
  password: ""
  # Use "utf8" instead of "utfmb4" for MySQL prior to 5.7.7
  encoding: utf8mb4
↓
test:
  adapter: jdbcsqlite3
  database: db/redmine_test.db
  encoding: utf8

6.各種インストール等

以降マニュアルに従っていく。$REDMINE_BASE$/redmine に移動する

  • bundler をインストール
gem install bundler
  • redmineに必要なものをすべてインストール
bundle install --without development test
bundle exec rake generate_secret_token

コマンド終了後にメッセージ等が出てこないので、以下に が作成されていて、中にそれらしきものが出力されていればOK

$REDMINE_BASE$\redmine\config\initializers\secret_token.rb

  • データベースのテーブル等の作成

公式マニュアル通り

set RAILS_ENV=production
bundle exec rake db:migrate
  • デフォルトデータ

公式マニュアル通り

set REDMINE_LANG=ja
bundle exec rake redmine:load_default_data

6. 動作確認

以下のコマンドを実行し、admin/admin でログオンできればOK。起動するのにちょっと時間がかかる

bundle exec rails server webrick -e production

7. 起動バッチ

以下のようなバッチファイルを作っておいて、そこから起動するとOK。終了時は Ctrl+C しないとpidファイルが残って次が面倒になるので注意

@echo off
set REDMINE_BASE=%CD%
set JAVA_HOME=%REDMINE_BASE%\jdk
set JRUBY_HOME=%REDMINE_BASE%\jruby
set PATH=%PATH%;%JAVA_HOME%\bin
set PATH=%PATH%;%JRUBY_HOME%\bin
jruby jruby\bin\rails server webrick -e production
pause

JRuby関連のエラー (9.2.15.0)

以下の環境にて。

OS: Windows 10 Pro

JVMjdk-15.0.2

JRuby: 9.2.15.0

 

以下のコマンド時に redcarpet でコケる

bundle install --without development test

以下に理由が記載。要はJRubyでは動かないんですと。gemfile の redcarpet の部分をコメントしてすすめる

github.com

さらに以下のコマンド実行時に racc のエラーが発生する

bundle exec rake generate_secret_token

直るまで自分でインストールしろとのこと。gemfile に 「gem "racc"」と書いて、updateすればいける。

github.com

 

2020年5月24日 (日) 晴れ

今のCSS難しい…。vm とか vh とか前はなかったよ…。

前のテーマ

blog.hatena.ne.jp

で表を表示しようとしたら横幅が足りなくて2段になるので、CSSをいじろうとしたけど挫折して、なんとか要望を満たせそうな 

blog.hatena.ne.jp

に落ち着きましたとさ。

 

このテーマだと小細工だけでリキッドレイアウトかつ左メニュー2カラムにできました!

ただデザインCSSで追加しても背景色は一部しか変わらないので、結局はCSS内部を変更しないといけなさそう…(色合いとかは前のが好き)。

2020年5月17日 (日) 晴れ

QNAPのDASが気になったので調べてみた。

www.qnap.com

  • QNAPの拡張HDDケースだけど単体でも使える
  • USB3.0なのでACアダプタ不要
  • RAIDでも単純な増設HDDとしても可能
  • SATA 6Gb/s

2本しか積めないのに3万くらいする…

www.qnap.com

  • TR-002を4本積めるようにした
  • SATA 3Gb/s

一番最後が使えない…。

www.qnap.com

  • 上のTR-004の上位互換
  • SATA 6Gb/s
  • SAS

検索しても取扱店が見つからない…

 

 

2020年5月16日 (土) 雨

ようやくサファイアバッジ到達。翡翠から1ヶ月かかったので次は2ヶ月以上かかるのかな。

あとようやくCOVID-19の解析が始まった。各社色々やってるような状況でどういう結果がでるのか楽しみ。

f:id:notz:20200517164233p:plain