デプロイオプション
自動デプロイ (Terraform): [今すぐ実行] をクリックして Terraform Explorer を開きます。Terraform コードを実行して、Elastic Compute Service (ECS) インスタンス、パブリック IP アドレス、必要なセキュリティグループルールを含む完全な環境を自動的に作成および設定できます。
手動デプロイ:既存の ECS インスタンスに手動でデプロイする場合は、以下の手順に従ってください。
事前準備
パブリックアクセスの有効化:インスタンスに固定のパブリック IP アドレスを割り当てるか、Elastic IP (EIP) をバインドします。
Linux:TCP ポート 22 (Secure Shell) と 8080 (Tomcat) でのインバウンドトラフィックを許可します。
Windows:TCP ポート 3389 (RDP) と 8080 (Tomcat) でのインバウンドトラフィックを許可します。
OpenJDK の手動デプロイ:ご利用のサーバーに Java Runtime Environment (JRE) と開発キットをインストールします。
操作手順
Linux
ステップ 1:Tomcat のダウンロードとインストール
ECS インスタンスにログインします。
[ECS コンソール - インスタンス] に移動します。上部のナビゲーションバーで、対象のリージョンとリソースグループを選択します。
対象インスタンスの詳細ページに移動します。 [接続] をクリックし、[ワークベンチ] を選択します。ページのプロンプトに従ってターミナルにログインします。
Tomcat インストールパッケージをダウンロードして展開します。
この例では Tomcat v9.0.91 を使用します。別のバージョンをインストールするには、Tomcat 公式 Web サイトにアクセスしてダウンロード URL を見つけ、コマンド内の URL を置き換えてください。
# Tomcat インストールパッケージのダウンロード sudo wget https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.91/bin/apache-tomcat-9.0.91.tar.gz --no-check-certificate # /usr/local/ ディレクトリに展開 sudo tar -zxvf apache-tomcat-9.0.91.tar.gz -C /usr/local/シンボリックリンクを作成します。
これにより、サービスの設定ファイルを変更することなく、このリンクのターゲットを変更するだけで Tomcat をアップグレードできます。
sudo ln -s /usr/local/apache-tomcat-9.0.91 /usr/local/tomcat
ステップ 2:Tomcat のシステムサービスとしての設定
Tomcat を systemd サービスとして設定し、システム起動時に自動的に開始されるようにします。
JDK パスを取得します。
sudo readlink -f $(which java)JDK 8 の場合:正しい JDK パスは、返されたパス内の
jreディレクトリの親ディレクトリです。JDK 11 以降の場合:返されたパスが正しい JDK パスです。
tomcat.serviceファイルを作成します。JDK_PATHを前のステップで取得したパスに置き換えてください。sudo tee /etc/systemd/system/tomcat.service > /dev/null <<'EOF' [Unit] Description=Apache Tomcat Web Application Container After=network.target [Service] Type=forking Environment="JAVA_HOME=JDK_PATH" Environment="CATALINA_PID=/usr/local/tomcat/temp/tomcat.pid" Environment="CATALINA_HOME=/usr/local/tomcat" Environment="CATALINA_BASE=/usr/local/tomcat" ExecStart=/usr/local/tomcat/bin/startup.sh ExecStop=/usr/local/tomcat/bin/shutdown.sh Restart=on-failure [Install] WantedBy=multi-user.target EOFTomcat サービスを起動し、ブート時に開始されるように有効化します。
# systemd 設定を再読み込みして新しいサービスファイルを適用 sudo systemctl daemon-reload # Tomcat サービスを起動 sudo systemctl start tomcat # ブート時に Tomcat サービスが開始されるように有効化 sudo systemctl enable tomcat
ステップ 3:デプロイの検証
サービスステータスの確認
sudo systemctl status tomcatステータスが
active(running)であれば、Tomcat は正常に起動しています。アクセスの検証
ローカルブラウザのアドレスバーに
http://<ECS インスタンスのパブリック IP アドレス>:8080と入力します。Tomcat のウェルカムページが表示されれば、Java Web 環境は正常にデプロイされています。
Windows
この例では、64 ビットの Windows Server 2022 に Tomcat 9.0.113 をデプロイします。
ステップ 1:Tomcat のインストールと設定
ECS インスタンスにログインします。
[ECS コンソール - インスタンス] に移動します。トップナビゲーションバーで、対象のリージョンとリソースグループを選択します。
対象インスタンスの詳細ページに移動し、[接続] をクリックして [ワークベンチ] を選択します。接続方法を [ターミナル] に設定し、ユーザー名とパスワードを入力して、グラフィカルターミナルページにログインします。
Tomcat 9.0.113 をダウンロードして展開します。
パス認識の問題を避けるため、パッケージを ASCII 文字以外の文字を含まないパス (例:
C:\Java\apache-tomcat-9.0.113) に展開してください。他のバージョンについては、Tomcat 公式 Web サイトにアクセスし、適切なバージョンを選択してインストールパッケージをダウンロードし、展開してください。

環境変数を設定します。
[PC] を右クリックし、 を選択します。
[システム環境変数] セクションで [新規...] をクリックし、
CATALINA_HOMEシステム変数を作成し、その値を Tomcat の展開パスに設定してから [OK] をクリックします。
[システム環境変数] で
Path変数を見つけて選択し、[編集...] をクリックします。
[環境変数の編集] ウィンドウで [新規] をクリックし、
%CATALINA_HOME%\binを追加してから [OK] をクリックして設定を保存します。
ステップ 2:Tomcat の Windows サービスとしてのインストールと起動
startup.bat で一時的に実行するのではなく、Tomcat を Windows サービスとしてインストールすることで、バックグラウンドで安定して実行し、システム起動時に自動的に開始されるようにします。
サービスをインストールします。
管理者としてコマンドプロンプトを開き、Tomcat の
binディレクトリに移動して、インストールコマンドを実行します。service.bat install Tomcat9メッセージ
The service 'Tomcat9' has been installed.が表示されれば、インストールは成功です。Tomcat9はカスタムサービス名です。この名前を使用してサービスを管理します。サービスを起動し、自動起動するように設定します。
を右クリックし、[ファイル名を指定して実行] をクリックし、services.mscと入力して Enter キーを押し、サービスマネージャーを開きます。Apache Tomcat 9.0 Tomcat9サービスを見つけ、サービスを右クリックして [プロパティ] を選択し、[スタートアップの種類] を [自動] に設定してから [開始] をクリックします。
ログに文字化けが表示される場合は、「Tomcat のログに文字化けが発生する」をご参照ください。
ステップ 3:デプロイの検証
ローカルブラウザのアドレスバーに http://<ECS インスタンスのパブリック IP アドレス>:8080 と入力します。Tomcat のウェルカムページが表示されれば、Java Web 環境は正常にデプロイされています。

次のステップ
Web プロジェクトのアップロード
ワークベンチを使用してファイルをアップロードまたはダウンロードする方法で、Web アプリケーション (.war ファイル) を Tomcat の Web サイトのルートディレクトリ (デフォルトは webapps) にアップロードします。Tomcat は WAR ファイルを自動的に検出してデプロイします。
デプロイ後、http://<ECS インスタンスのパブリック IP アドレス>:8080/<プロジェクト名> でアプリケーションにアクセスします。
Tomcat の設定
設定ファイルの変更
Tomcat のインストールディレクトリにある
confフォルダに移動し、server.xmlファイルを開きます。必要に応じて Tomcat の設定を変更します。
Tomcat はデフォルトでポート
8080を使用します。ポート番号を変更するには、port属性の値を変更します。新しいポートでトラフィックを許可するには、インスタンスのセキュリティグループにセキュリティグループルールを追加する必要があります。

Tomcat のデフォルトの Web サイトのルートディレクトリは
webappsです。これを変更するには、appBase属性の値を変更します。
Tomcat の JVM メモリパラメーターの設定
Linux
JVM パラメーターを一元管理するために、
setenv.shファイルを作成します。ご利用の ECS インスタンスタイプとアプリケーションの負荷に基づいて、初期および最大の JVM ヒープサイズを調整してください。
sudo tee /usr/local/tomcat/bin/setenv.sh > /dev/null <<'EOF' #!/bin/bash # 例:メモリ 2 GB の ECS インスタンスの場合、512 MB を割り当て JAVA_OPTS="-server -Xms512m -Xmx512m" export JAVA_OPTS EOFファイルを実行可能にします。
sudo chmod +x /usr/local/tomcat/bin/setenv.sh設定を有効にするために Tomcat を再起動します。
Windows
Tomcat のインストールディレクトリにある
binフォルダに移動し、catalina.batファイルを開きます。JVM パラメーターを追加または変更します。
ファイルの先頭近く (通常は
setlocalの後、call "%CATALINA_HOME%\bin\setenv.bat"の前) にJAVA_OPTSを追加または変更します。ご利用の ECS インスタンスタイプとアプリケーションの負荷に基づいて、初期および最大の JVM ヒープサイズを調整してください。# 例:メモリ 2 GB の ECS インスタンスの場合、512 MB を割り当て set "JAVA_OPTS=%JAVA_OPTS% -Xms512m -Xmx512m"JAVA_OPTSが既に存在する場合は、スペースで区切って新しいパラメーターを追加します。設定を有効にするために Tomcat を再起動します。
本番環境への適用
本番環境でのセキュリティリスクを軽減するために、デプロイ後に以下の手順を実行することを推奨します。
デフォルトアプリケーションの削除
潜在的な攻撃対象領域を減らすために、
webappsディレクトリからすべてのデフォルトのサンプルアプリケーション (docs、examples、manager、host-manager) を削除します。Linux:
sudo rm -rf /usr/local/tomcat/webapps/*Windows:ファイルエクスプローラーを使用して、
CATALINA_HOME\webappsディレクトリ内のすべてのサブディレクトリを手動で削除します。
HTTPS の設定
本番環境では HTTPS を使用する必要があります。Tomcat サーバー (Linux) に SSL 証明書をインストールし、Nginx または Server Load Balancer (SLB) をリバースプロキシとして使用して HTTPS リクエストを処理する必要があります。
よくある質問
ブラウザがタイムアウトするか、「このサイトにアクセスできません」と表示される
セキュリティグループの確認:ご利用の ECS インスタンスのセキュリティグループのインバウンドルールが、ポート
8080でのトラフィックを許可していることを確認します。OS のファイアウォールの確認:OS レベルのファイアウォール (
firewalldやWindows Defender ファイアウォールなど) が無効になっているか、ポート8080でのトラフィックを許可するルールがあることを確認します。ポートリスナーの確認:Tomcat がポート
8080でリッスンしていることを確認します。Linux:
ss -lntp | grep 8080Windows:
netstat -ano | findstr ":8080"
Tomcat の起動失敗
ログの確認:Tomcat のメインログは、インストールディレクトリの
logsフォルダにあります。catalina.out(Linux) またはcatalina.<date>.log(Windows) およびlocalhost.<date>.logファイルを確認します。Address already in useエラーが見つかった場合、ポートは別のプログラムによって占有されています。詳細については、「ping 可能な ECS インスタンスのポート接続問題のトラブルシューティング」をご参照ください。不正な JDK パス:
JAVA_HOME環境変数が正しく設定されているか確認します。
Tomcat のログに文字化けが発生する
この問題は通常、Windows コマンドプロンプトのデフォルトエンコーディング (通常は GBK) と Tomcat のログ出力エンコーディング (通常は UTF-8) の不一致が原因で発生します。
Tomcat のインストールディレクトリにある
confフォルダを開き、logging.propertiesファイルを編集します。ファイル内のデフォルトエンコーディング
UTF-8のすべてのインスタンスをGBKに変更します。ファイルを保存し、Tomcat を再起動します。ログの文字が正しく表示されることを確認します。