LoginSignup
3
2

OpenMBEE MMS4の環境構築

Last updated at Posted at 2022-02-08

概要

https://www.openmbee.org/
OpenMBEEを構成する主な3つのソフトウェア「Model Development Kits(MDK)」「Model Management System(MMS)」「View Editor(VE)」がある。
このうちMMSのバージョン3まではalfrescoのプラグインとして作られていたがバージョン4からは単体で動作するようになった。このため導入方法がバージョン3と異なる。
MMSバージョン4とそれを利用するMDK,VEの導入方法を解説する。

環境

OpenMBEE

  • MMS 4.0.20
  • MDK 6.1.0
  • VE 5.0.0

その他ソフトウェア

  • docker
  • java 17
  • postgresql 11
  • Elasticsearch 7.8.1
  • minio

OS

  • AlmaLinux8
    このページの手順をそのまま利用可能
  • Ubuntu22.04
    dockerのインストールは別途行っておく
    適時sudoが必要

Docker

導入にはDockerを使用するのでDockerの簡単な説明を記載する。

Dockerのインストール

下記のブログを参考にしました。
https://blog.trippyboy.com/2021/docker/almalinux%E3%81%ABdocker%E7%92%B0%E5%A2%83%E3%82%92%E6%A7%8B%E7%AF%89%E3%81%99%E3%82%8B/

sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
dnf erase podman buildah
dnf --allowerasing -y install docker-ce docker-ce-cli containerd.io
systemctl enable docker
systemctl start docker
docker info
docker run hello-world
docker rm $(docker ps -q -a)

Dockerの簡単な説明

MMS4の構築で主に利用するdockerコマンド

  • docker create
    コンテナを作成

  • docker start
    コンテナを起動

  • docker run
    createとstartを同時に行う

  • docker stop
    コンテナを停止

  • docker rm
    コンテナを削除

  • docker ps
    起動中のコンテナ一覧を表示

  • docker ps -a
    起動していないコンテナも表示

JDK17のインストール

wget https://download.oracle.com/java/17/latest/jdk-17_linux-x64_bin.rpm
rpm -ivh jdk-17_linux-x64_bin.rpm
java -version

MMS4のインストール

参照元
https://mms-reference-implementation.readthedocs.io/en/latest/docker.html

DockerのインストールとJDK17のインストールは済ませておく。

Postgresql

docker run -d -e POSTGRES_PASSWORD=test1234 -e POSTGRES_USER=mmsuser -e POSTGRES_DB=mms -p 5432:5432 --name=postgres postgres:11-alpine

Elasticsearch

docker run -d -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" --name=elasticsearch docker.elastic.co/elasticsearch/elasticsearch:7.8.1

MinIO

docker run -d -p 9000:9000 -e "MINIO_ACCESS_KEY=admintest" -e "MINIO_SECRET_KEY=admintest" --name=minio minio/minio server /data

MMSコンテナをdocker create

docker create --name=mms --network="host" -e "SPRING_CONFIG_LOCATION=/mms.properties" openmbee/mms:4.0.20

設定ファイルの作成

vi application.properties.example

下記ページの内容をコピーして上記の設定ファイルに書き込む
https://github.com/Open-MBEE/mms/blob/develop/example/src/main/resources/application.properties.example

mms.admin.usernameは任意のユーザ名に変更。管理者のユーザ名となる。

mms.admin.username=test

mms.admin.passwordは任意のパスワードに変更。管理者パスワードとなる。

mms.admin.password=test

長い文字列に変更。exampleで書かれているデフォルト文字列では文字列長が不足

jwt.secret=test_test_test_test_test_12345677890_test_test_test

設定ファイルをコンテナ内へコピー

docker cp application.properties.example mms:/mms.properties

MMSを起動

docker start mms

postgres,elasticsearch,minio,mmsの4つのコンテナが起動していることを確認する。

下記コマンドで起動しているか確認

docker ps

MMSの操作

MMSの停止

docker stop mms

2回目以降のMMS起動方法

docker start postgres
docker start elasticsearch
docker start minio
docker start mms

起動確認

下記にアクセスできれば起動できている。
http://localhost:8080/v3/swagger-ui.html
http://[サーバアドレス]:8080/v3/swagger-ui.html

このページではAPIを発行できるのでMMSVersionを実行し、status:200とmmsのバージョンが返ってくるか確認する。

右上のAuthorizeをクリックし、usernameとpasswordを入力する。(設定ファイルに記載した管理者と管理者パスワード)
GETメソッドの/authenticationを実行する。
status:200が返ってくることを確認する。

MMSのログ

docker logsで確認できる

docker logs mms
または
docker logs mms -f

-fはログが書き込まれたら逐次表示を更新する。「tail -f [ファイル名]」のようなもの。

VEのインストール

git clone https://github.com/Open-MBEE/exec-ve.git

設定ファイルを変更しておく

cd exec-ve/config

vi example.json
localhostと記載された箇所をサーバアドレスに変更する。

dockerignoreを変更

vi .dockerignore

ファイルの末尾に以下を記載
!.eslintignore

docker imageの作成、dockerコンテナの作成と実行

docker build -t ve .
docker run -it -p 9001:9000 --name ve ve

上記設定で9001番ポートにアクセスするとveに接続できる。

起動確認

http://サーバアドレス:9001

2回目以降のVE起動

docker start ve

MDKのインストール

MDKにはいろいろ種類があるがMagicdrawにプラグインとして導入するタイプを利用。
以前書いたものから手順は変わっていない。
バージョン5.0.0以上を入れること。
https://qiita.com/crimson707/items/296457ee64bc49237d5a

MDK6.1.0
https://github.com/Open-MBEE/mdk/releases/tag/6.1.0

旧バージョンと比べてOptions→Project→General→MBEEからMMSサーバを指定するよう変更されている。

MMS,MDK,VEのバージョン対応は下記を参照。
https://github.com/Open-MBEE/open-mbee.github.io/wiki/Compatibilities

3
2
10

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
3
2