LoginSignup
0
1

More than 1 year has passed since last update.

Lightsailのbitnami RedmineにPlantUMLプラグインを導入する

Last updated at Posted at 2021-05-26

きっかけ

Redmineでチケット管理しているシステムの設計書を同じRedmineで管理したくなった。
どうせなら脱Excel化して、Wikiで設計書を作りたい。

環境

Amazon LightsailのBitnami版Redmine

/etc/os-release
PRETTY_NAME="Debian GNU/Linux 10 (buster)"
NAME="Debian GNU/Linux"
VERSION_ID="10"
VERSION="10 (buster)"
VERSION_CODENAME=buster
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"

Redmineの情報

Environment:
  Redmine version                4.1.1.stable
  Ruby version                   2.5.8-p224 (2020-03-31) [x86_64-linux]
  Rails version                  5.2.4.2
  Environment                    production
  Database adapter               Mysql2
  Mailer queue                   ActiveJob::QueueAdapters::AsyncAdapter
  Mailer delivery                smtp

導入手順

Javaのインストール

$ sudo apt-get install default-jdk

Javaのインストールバージョンとパスが通っているかを確認

$ java --version
openjdk 11.0.11 2021-04-20
OpenJDK Runtime Environment (build 11.0.11+9-post-Debian-1deb10u1)
OpenJDK 64-Bit Server VM (build 11.0.11+9-post-Debian-1deb10u1, mixed mode, sharing)

Graphvizのインストール

$ sudo apt-get install graphviz

Graphvizのインストールバージョンとパスが通っているかをdotコマンドで確認

$ dot -V
dot: error while loading shared libraries: libgvc.so.5: cannot open shared object file: No such file or directory

おやおや、エラーが発生しました。共有ライブラリがない??
dotコマンドのパスを確認します。

$ which dot
/opt/bitnami/common/bin/dot

ん、apt-getでインストールしたのに、bitnamiの配下を参照している??
dpkgコマンドでgraphvizのインストール先を確認します。

$ dpkg -L graphviz
(抜粋)
/usr/bin/dot
(抜粋)

/usr/bin/dotにあるのね。
では、改めてdotコマンドで確認します。

$ /usr/bin/dot -V
dot - graphviz version 2.40.1 (20161225.0304)

成功!

$ echo $PATH
(抜粋):/opt/bitnami/common/bin(抜粋):/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games

PATHの優先順位がbitnamiの方が高かったということですね。

日本語フォントのインストール

何も考えず、IPAフォントをインストールします。

$ sudo apt-get install fonts-ipafont fonts-ipaexfont

PlantUMLの入手

参考サイトでは、wgetで取得していますが、自分のPCにダウンロード後、SCPでホームディレクトリ(/home/bitnami)にアップしました。

PlantUMLの動作確認

下記の内容を test.umlとして保存します。

test.uml
@startuml
Alice -> Bob: test
@enduml

画像ファイルに変換します。

$ java -jar plantuml.jar test.uml

下記のようなファイルが生成されると成功です。

test.png

コマンド化

PlantUMLのjarファイルをホームディレクトリ以外に移動します。

$ sudo cp plantuml.jar /usr/local/bin

/usr/bin/plantumlにシェルスクリプトを作ります。

/usr/bin/plantuml
#!/bin/bash
export LANG=ja_JP.UTF-8;
/usr/bin/java -Djava.io.tmpdir=/var/tmp -Djava.awt.headless=true -jar /usr/local/bin/plantuml.jar  -charset UTF-8 ${@}

ファイル作成後、ファイルのパーミッションを変更します。

$ sudo chmod 755 /usr/bin/plantuml

先ほどと同様画像ファイルが作成できるかを確認します。

$ sudo chmod 755 /usr/bin/plantuml

PlantUML Redmine pluginのインストール

RedmineのPluginsディレクトリに移動する。

cd ~/apps/redmine/htdocs/plugins

git cloneし、所有者をRedmineの他のディレクトリと合わせる。

$ git clone https://github.com/dkd/plantuml.git
$ sudo chown -R bitnami:daemon plantuml

プラグインをインストールする。
sudo無しでは、「production.logに書き込めないよ」というエラーが出たので、sudoを付けました。

$ sudo bundle exec rake redmine:plugins:migrate RAILS_ENV=production

Redmineの添付ファイル保存ディレクトリのパーミッションを変更する。

$ chmod 775 /home/bitnami/apps/redmine/htdocs/files

パーミッションを変更しないと下記のようなエラーが表示される場合があります。

スクリーンショット 2021-05-26 21.59.58.png

念のため、諸々再起動します。

$ sudo /opt/bitnami/ctlscript.sh stop
$ sudo /opt/bitnami/ctlscript.sh start

再起動後、Redmineに管理者ユーザでログインします。
ログイン後、「設定」→「プラグイン」画面を表示します。
PlantUMLのパスに「/usr/bin/plantuml」を入力し、[適用]ボタンをクリックします。

スクリーンショット 2021-05-26 21.54.25.png

RedmineのWikiで動作確認

Wikiに下記のように入力します。日本語で表示できるかもテストします。

スクリーンショット 2021-05-26 22.10.50.png

Wikiページを保存後、以下のように表示されると成功です。

スクリーンショット 2021-05-26 22.10.38.png

ちなみに、クラス図も動作確認します。

スクリーンショット 2021-05-26 22.04.55.png

以上で作業は完了です。

参考サイト

PlantUML

RedmineのPlantUMLプラグイン

PlantUMLをUbuntuにインストールする

PlantUMLをRedmineから使う

RedmineでPlantUML(+Graphviz)を使おうとしてはまった話

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1