Heroku CLI を使用した、WAR Deployment の設定
この記事の英語版に更新があります。ご覧の翻訳には含まれていない変更点があるかもしれません。
最終更新日 2019年02月13日(水)
Table of Contents
Heroku Java CLI プラグインは、ローカルで生成された WAR ファイルを Heroku にデプロイしますが、さまざまな実行シナリオに合わせて設定できます。ここでは、最もよく使用されているシナリオについて説明します。
ファイルを含める
--includes
オプションを使用して、slug に追加ファイルを含めることができます。たとえば、次のようになります。
$ heroku war:deploy myapp.war --includes newrelic.jar:newrelic.xml
含まれたファイルを区切る文字は、File.pathSeparator のようにプラットフォーム特有です。Windows では ;
(セミコロン) になり、Mac と Linux では :
(コロン) になります。
Tomcat バージョンの設定
--webapp-runner
オプションを使用して、デフォルトの Tomcat Webapp Runner バージョンを上書きできます。たとえば、次のようになります。
$ heroku war:deploy myapp.war --webapp-runner 9.0.16.0
デフォルトバージョンは 8.5.38.0 です。Webapp Runner のバージョンは、基礎となる Tomcat サーバーのバージョンに固定されます。したがって、バージョン 9.0.16.0 の Webapp Runner はバージョン 9.0.16 の Tomcat を使用します。使用可能な Tomcat Webapp Runner バージョンのリストは、Maven Central で入手できます。
Tomcat オプションの設定
アプリケーション上で WEBAPPRUNNEROPTS 環境設定を設定することにより、サーバーで WAR ファイルをどのように実行するかを設定できます。たとえば、次のようなオプションを設定できます。
$ heroku config:set WEBAPP_RUNNER_OPTS="--uri-encoding=UTF-8"
Heroku デプロイプラグインは、WAR ファイルのコンテナとして Tomcat Webapp Runner を使用します。したがって、すべての Webapp Runner オプションはアプリで利用できます。完全なリストオプションは、Webapp Runner のドキュメントで説明されています。
Java オプションの設定
JAVA_OPTS
環境設定を設定することにより、Tomcat コンテナを実行する、基礎となる JVM も設定できます。たとえば、次のオプションを設定して、スレッドスタックサイズを設定できます。
$ heroku config:set JAVA_OPTS="-Xss512k"
たとえば、Heroku プラットフォームが一連の適切なデフォルトを選択します。
詳細については、「WAR Deployment」を参照してください。