Edited at

Heroku で PlantUML サーバーを立ててみた

More than 1 year has passed since last update.

この記事で作成したアプリで使用している PlantUML サーバーを Heroku で立てたので、手順をまとめておきます。

2017/09/20 追記

本家が jetty-runner に対応したため、webapp-runner は不要になりました。


Heroku の準備


  1. Heroku のアカウント作成

  2. 画面に沿って新規アプリ作成

  3. Buildpacks は Java を選択 (4 と同じタイミングでも可)

  4. Settings の Buildpacks に graphviz を追加

image


デプロイの準備



  1. plantuml-server を clone

  2. Heroku にデプロイ( push )する前に以下の修正を行います。



    1. Procfile を新規追加する。


    2. pom.xml に webapp-runner を追加します。詳細はこちら jetty-runner についてはこちら


    3. .fonts 以下にフォントを追加します。(無難に IPAexフォントにしました。フォントがないと日本語が表示できません。)




  3. Heroku CLI をインストール ( mac なら brew install heroku )


  4. heroku git:remote -a アプリ名 を実行し、リモートブランチとして heroku のアプリを指定。


  5. git push heroku master で heroku へデプロイします。


動作確認

Resources は以下のようになっていれば OK

image.png

また、Build log が以下のようになります。

-----> Java app detected

-----> Installing OpenJDK 1.8... done
-----> Installing Maven 3.3.9... done
-----> Executing: mvn -DskipTests clean dependency:list install

<中略> 依存関係のダウンロード等 ( plantuml.war のビルド、jetty-runner のダウンロード etc )

[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 13.995 s
[INFO] Finished at: 2017-03-26T00:55:20+00:00
[INFO] Final Memory: 32M/231M
[INFO] ------------------------------------------------------------------------
-----> Graphviz app detected
-----> Installing Graphviz version 2.36.0
(Ubuntu package graphviz_2.36.0-0ubuntu3.1_amd64.deb)
-----> Graphviz binaries in /app/graphviz/bin and added to PATH
-----> Discovering process types
Procfile declares types -> web
-----> Compressing...
Done: 73.1M
-----> Launching...
Released バージョン
https://アプリ名.herokuapp.com/ deployed to Heroku

あとは、簡単なシーケンス図や、オブジェクト図が表示できればOKです。


参考