dcm4chee-arc-light 5.29.2 のデプロイ

前回の記事で、ビルドが完了したので、WildFly 26 へデプロイ。

公式の教えはここ

少々ダルいが、手順通りやっていくか・・・などと言ってましたが、これがとにかく長い。

ポイントのみにします。

Initialize Database

ここはそんなに面倒でもない。

今回は postgreSQL を使用。

pgAdmin が使えるなら、コマンドを叩くより速いので、そうした方がええかも。

ユーザー dcm4che さんを作成し、このユーザーをオーナーとするデータベース dcm4che を作成。

データベースのスキーマの一覧およびスクリプトは、(PostgreSQL に限らず)ここにある。

今回は、

create-psql.sql, create-fk-index.sql, create-case-insensitive-index.sql

が必要ですが、ソースコードの dcm4chee-arc-light -> src -> resources 以下にあります。

sourceforge からバイナリ落としてきた人は解凍すればわかるので説明は割愛。ソースコード落としてきた人は、上の位置にスクリプトはあるので、それを使いましょう。(どっちでやっても同一の内容です)

これも pgAdmin から操作した方が楽。

これで、テーブルが作成されます。

DICOM 仕様書で規定されている patient – study – series の構造がこのテーブル構成からも窺えます。

Setup LDAP Server

LDAP というのは、Lightweight Directory Access Protocol の略で、MS の Active Directory の上位概念みたいなやつです。

Mac では、他の Unix マシン同様、既に入ってます。
各種設定ファイルは、/etc/openldap を参照。

GitLab でソースが公開されていますが、GitHub にもそのミラーサイトがあります。(ちなみに C。もはや Java でもなんでもない…)

wiki の解説にもあるように、この考え方自体は興味深いんですが、いかんせん、後に出てくる諸々のプロジェクトがメンテされてなさすぎ。

ところで、OpenLDAP の設定をするのに

・slapd.conf にschma などをセットする

・dynamic runtime configuration を使う

の二通りの方法が書かれていますが、後者の方が簡単でしょう。

なのですが、後者を使う場合、ldap-utils が必要です。が、この MacOS バージョンはありません。とすると、前者の方法論を取るしかないと思うのですが、これがなかなか大変。検討中です。

Ubuntu にデプロイする場合は『Ubuntu 18.04にDcm4chee-arc-lightをインストールする』がまとまってますので、参考にするといいかと思います。

(前者の方法論は、後日、まとめる予定。以下はメモ的なもの)

OpenDJ のリポジトリ

Apache Directory のソースコード
org.apache.directory.checkstyle-configuration.version のバージョンを 2.0.1 に変更。

Setup WildFly

今回ビルドしたバージョンは 5.29.2 で、5.16.1 onwards (5.16.1 以降)なのでインストラクション通り進めれば OK な(はず)。

と思ってましたが、ここもそこそこ長い。

ポイントだけ書いておくと

・動かすだけでよければ、WildFly の細かなチューニングは後回しにして、まず module などを整備しましょう。

・5.29.2 では、WildFly の full バージョンではなく、web profile を使うので、standalone.xml を dcm4chee-arc.xml とリネームして、ここでポンポンポンと各種設定を行う。

のがいいんではないでしょうか。

一応、デプロイまでできると

フロントの ui を通じて各種操作を行うことができます。

 

dcm4chee-arc-light 5.29.2 のビルド

C++ 系の オープンソースの PACS は Orthanc が有名だが、Java 系では dcm4chee-arc-light が有名なようだ。

某先生も「arc-light は JakartaEE には対応していないので、手を出していないが、ライブラリの方はけっこう使えるようだ」と言っていた。

JavaEE 環境になってしまうがそこら辺は割り切って試してみますかね。

なお、ビルドはそれほど難しくありませんが、デプロイがとにかく手順がかかる。
よほどの事情がない限り、sourceforge で公開されているバイナリを使った方がいいでしょう。

ライブラリ dcm4che をビルド

dcm4che というのが dcm4chee-arc-light を構築するのに必要なライブラリ、arc-light は PACS サーバーそのもの、みたいです。

なので、先に dcm4che をビルド。

mvnw コマンドを使うらしいのですが、まずは maven をインストールしておきましょう。

git コマンドで

git clone git@github.com:dcm4che/dcm4che.git

として、dcm4che のソースをローカルマシンにもってくる。

リポジトリの教えにあるように

./mvnw install

としてビルドが始まりますが、mvnw コマンドは mvn の何かのラッパーのようでやや間があきます。

ビルドが始まってからは速い。

となれば、ビルドは成功。

dcm4chee-arc-light のビルド

これまでと同様にソースコードの準備。

git clone git@github.com:dcm4che/dcm4chee-arc-light.git

としてソースコードをローカルマシンに持ってくる。

ビルドにはオプションがあるので、お好みで。

とりあえず試すだけならセキュアな UI や API は要らないでしょうから、

mvn install -D db=psql

でいいと思います。

数分、かかりますが、ビルド成功。

dcm4chee-arc-light -> dcm4chee-arc-war -> target に war ファイルができているので、これをデプロイすればいいんでしょうか。

デプロイは面倒という記事が散見されるので、これは稿をあらためて。