ITエンジニアの成長ブログ

ITエンジニアとして行う勉強の発信&日々の生活で体験した楽しいことをゆるく発信

TomcatにWebアプリケーションをGUIでデプロイする

今回は、Webアプリケーションコンテナの一つであるApache Tomcat(以降、Tomcat)にWebアプリケーションをGUIでデプロイする方法を紹介したいと思います。

今回の検証はTomcatバージョン8.5系、Windows OS 11Proで確認しています。

GUIでデプロイするための準備

実際にGUIでデプロイするために必要な準備があります。

それは、事前にManagerアプリケーションを有効化しておくことです。今回のGUIでデプロイする方法は、このManagerアプリケーションを使用するので、この作業が必要になります。

因みにManagerアプリケーションとは、Tomcatに標準で付属している管理用アプリケーションですが、デフォルトでは有効化されていません。

以前、別の記事でManagerアプリケーションを有効化するための記事を記載してるので、手順を知りたい方はご参照いただければと思います。
mr-star.hatenablog.com

サンプルのWebアプリケーションを用意する

GUIでデプロイするサンプルのWebアプリケーションを用意します。

Webアプリケーションは以下のような動作確認用のプログラムを1つ用意したものをwarファイルにまとめて用意します。

サンプルWebアプリケーション

今回は、プログラムは以下のHelloServlet.javaを用意しました。

package hoge;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import javax.servlet.annotation.WebServlet;

@WebServlet("/HelloServlet")
public class HelloServlet extends HttpServlet {

    @Override
    public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws IOException, ServletException {

        PrintWriter out = response.getWriter();
        out.println("Hello!");
    }
}


上記のプログラムを含んだWebアプリケーションを、jarコマンドでwarファイルにまとめます。warファイルができたら準備完了です。

jarでwarファイル作成

GUIでWebアプリケーションをデプロイする

それでは、準備が整いましたので本題に入っていきましょう。

以下のURLでTomcatのManagerアプリケーションへアクセスします。
http://localhost:8080/manager/html

Managerアプリケーション

画面中央あたりに以下の通り、「配備」セクションがあると思います。2つに分かれていますが、下の"WARファイルの配備"の部分に注目します。

Managerアプリケーションの配備セクション

「アップロードするWARファイルの選択」の「ファイルを選択」ボタンを押下すると、ブラウザのファイル選択ダイアログが開きます。そしたら、先ほど作成したwarファイルを見つけて、選択します。

ファイル選択ダイアログ

そうすると、以下の通り選択したwarファイルが「ファイルを選択」ボタンの右あたりに表示されると思います。そうしたら、下にある「配備」ボタンを押下します。

warファイルを選択した後

上手く処理されると、以下の通りWebアプリケーションの一覧に先ほど選択したwarファイルのWebアプリケーションが表示されると思います。これでデプロイ作業は終わりになります。拍子抜けするほど簡単ですね。

デプロイ後のWebアプリケーション一覧画面

動作確認してみます。問題なさそうですね。

デプロイしたWebアプリケーションの動作確認

GUIで再デプロイする場合

因みに、GUIで既に存在するWebアプリケーションを再デプロイすると以下のエラーが発生してしまいます。同じwarファイル名だとエラーにする仕様です。

再デプロイ時にエラー発生

そのため、再デプロイ時は先に「配備解除」をする必要があります。以下の通り該当のアプリケーションコマンド欄に「配備解除」があるので、これを押下します。

配備解除ボタン

すると、以下の通りアプリケーション一覧から配備解除したアプリケーションの表示が消えます。

配備解除するとアプリケーションの表示が消える

そしたら、再度同様の手順でManagerアプリケーションからGUIでwarファイルをデプロイすることができます。

おわりに

いかがでしょうか。簡単ですが、TomcatGUI経由でWebアプリケーションをデプロイする方法を紹介しました。

この方法であれば、別のマシンにからブラウザ経由でアクセスすることができれば、リモートでデプロイすることが可能です。必要に応じてこのような機能も使用することで、便利に運用することができるのでケースバイケースで使えばよさそうですね。

今回はこの辺で。最後までお読みいただきありがとうございました。