⛏️

M1系CPUを採用したMacで、仮想マシン上に構築したPlantUML Serverを利用して、UMLを描画する

2023/01/02に公開

最初にM1 を採用したMacbookが発表されてから、2年以上。

開発者の方も、M1系CPUを採用したMacbookでお仕事をされることが多くなってきたのではないでしょうか。

ここでは、UMLを書くときによく使うPlantUMLを、M1系 Macbookの上に構築した仮想マシンにセットアップし、ホスト側からアクセスして、UMLの描画を行うまでを説明します。

環境準備

UTMをインストール

まずは仮想化ソフトをDLしよう

まずは仮想化ソフトをDLしましょう。
何でも良いのですが、この記事では、UTMを利用します。

Mac App StoreからもDLできるのですが、今回は公式サイトからDLします。

DLが完了したら、DMGファイルをダブルクリックしてインストールしてください。

Guest OSをダウンロード

それでは、次に仮想化ソフト上で実行するGuest OSをダウンロードします。

M1系で動かすためには、arm64向けのバイナリが配布されているOSを利用することが必要です。

これを満たせば何でもいいのですが、ここでは Ubuntu Server for ARMを利用します。

Ubuntuをインストール

では、UTMを起動して、Ubuntuをインストールしてください

PlantUML環境のセットアップ

下記サイトを参考に、PlantUMLを設定してください。

https://blog.katsubemakito.net/articles/install_plantuml_for_ubuntu

設定後下記コマンドを実行することで、PlantUML Serverに設定されたPicoweb機能を有効にできます。

$ java -jar plantuml-nodot.1.2022.14.jar -picoweb

Port Forwardingの設定

下記を参考にPort Forwardingを設定してください。

No 内容 スクリーンショット
1 仮想マシンを右クリックして、設定を表示させる
2 Networkタブを選択し、Network ModeをEmulated VLAN に変更する
3 Port Forwardの右隣のNewを押下して、8080ポートを許可するように変更する

上記Port Forwardingの設定を行った後、仮想マシン上でPicoWebを起動させ、任意のエディタでlocalhost:8080を参照させると下記のように、PlantUMLを描画することができます。

おわりに

このやり方以外にも、Dockerを使うことで同様の機能を実現できますが、Dockerを利用する場合ライセンス的にめんどくさいケースが有るので、記載しました。

初歩の初歩だと思うのですがハマってしまったので・・・

では。

Discussion