すべてのプロダクト
Search
ドキュメントセンター

Elastic Compute Service:Java Web 環境の手動デプロイ (Jetty)

最終更新日:Apr 01, 2026

Jetty は、Elastic Compute Service (ECS) インスタンス上で Java Web アプリケーションを実行するための、軽量なオープンソースのサーブレットコンテナです。Apache Tomcat と比較して、Jetty は軽量なアプリケーション、高同時実行数のシナリオ、分散環境により適しています。このガイドでは、Linux または Windows に Jetty 12 をインストールし、デプロイメントを検証する方法について説明します。

前提条件

開始する前に、以下の準備が整っていることを確認してください。

  • ECS インスタンスにパブリック IP アドレス (静的なシステム割り当て) または関連付けられた Elastic IP アドレス (EIP) があること。詳細については、「EIP」をご参照ください。

  • ポート 22 (SSH)、3389 (RDP)、および 8080 (Jetty) でのインバウンドトラフィックを許可するセキュリティグループルールが設定されていること。詳細については、「セキュリティグループルールの追加」をご参照ください。

  • インスタンスに Java 環境がデプロイされていること。詳細については、「Java 環境のデプロイ」をご参照ください。

Linux

この手順では、Jetty 12.0.16 をインストールします。異なるバージョンを使用する場合は、コマンド内のバージョン番号とディレクトリパスを置き換えてください。

クイックスタート

Jetty に精通している場合は、次のコマンドを実行して、動作するサーバーを構築できます。

# Jetty のダウンロードと展開
wget https://repo1.maven.org/maven2/org/eclipse/jetty/jetty-home/12.0.16/jetty-home-12.0.16.tar.gz --no-check-certificate
tar -zxvf jetty-home-12.0.16.tar.gz
sudo mv jetty-home-12.0.16 /usr/local/jetty/

# jetty-base ディレクトリの作成と環境変数の設定
sudo mkdir /usr/local/jetty-base
echo 'export JETTY_HOME=/usr/local/jetty' >> ~/.bashrc
echo 'export JETTY_BASE=/usr/local/jetty-base' >> ~/.bashrc
source ~/.bashrc

# jetty-base の初期化と Jetty の起動
cd /usr/local/jetty-base
sudo java -jar $JETTY_HOME/start.jar --add-module=server,http,deploy
sudo java -jar $JETTY_HOME/start.jar --add-module=demos
nohup sudo java -jar $JETTY_HOME/start.jar &

その後、ブラウザで http://<ECS のパブリック IP アドレス>:8080 を開きます。Jetty のテストページが表示されたら、デプロイメントは完了です。

説明付きの詳細な手順については、次のセクションに進んでください。

操作手順

  1. Linux インスタンスに接続します。詳細については、「ワークベンチを使用して SSH 経由で Linux インスタンスに接続」をご参照ください。

  2. Jetty のインストールパッケージをダウンロードして展開します。

    重要

    ダウンロード URL が有効でなくなった場合、または異なるバージョンの Jetty が必要な場合は、Jetty の公式サイトから最新の URL を取得してください。Jetty のバージョンによってサポートされる Java 開発キット (JDK) のバージョンが異なります。バージョン履歴を確認して、ご利用の JDK と互換性のあるバージョンを選択してください。

    wget https://repo1.maven.org/maven2/org/eclipse/jetty/jetty-home/12.0.16/jetty-home-12.0.16.tar.gz --no-check-certificate
    tar -zxvf jetty-home-12.0.16.tar.gz

    image

  3. 展開したファイルを /usr/local/jetty/ に移動します。

    sudo mv jetty-home-12.0.16 /usr/local/jetty/
  4. jetty-base ディレクトリを作成します。

    sudo mkdir /usr/local/jetty-base

    Jetty は JETTY_HOME (Jetty のディストリビューション) と JETTY_BASE (サーバーの構成と Web アプリ) の 2 つのディレクトリを使用します。これらを分離することで、構成に触れることなく Jetty をアップグレードできます。

  5. JETTY_HOMEJETTY_BASE の環境変数を設定します。

    1. ~/.bashrc を編集用に開きます。

      sudo vim ~/.bashrc
    2. I キーを押して挿入モードに入ります。次の行を追加します。

      export JETTY_HOME=/usr/local/jetty
      export JETTY_BASE=/usr/local/jetty-base
    3. Esc キーを押し、:wq と入力して Enter キーを押し、ファイルを保存して閉じます。

    4. 変更を適用します。

      source ~/.bashrc
  6. jetty-base ディレクトリを初期化します。

    1. jetty-base ディレクトリに移動します。

      cd /usr/local/jetty-base
    2. 必要なモジュールでディレクトリを初期化します。

      説明

      利用可能なすべての Jetty モジュールをリスト表示するには、java -jar $JETTY_HOME/start.jar --list-modules=* を実行します。Jetty 9 を使用する場合は、--add-module--add-to-start に置き換えてください。

      sudo java -jar $JETTY_HOME/start.jar --add-module=server,http,deploy

      コマンドが実行されると、$JETTY_BASE/start.d/ ディレクトリと、サーバー構成情報を含む他のディレクトリが作成されます。

      image

  7. サンプルアプリケーションをデプロイし、Jetty を起動します。

    1. Jetty のサンプル Web アプリケーションをデプロイします。

      説明

      Jetty 10 または 11 の場合は、demosdemo に置き換えます。Jetty 9 の場合は、代わりに sudo mv $JETTY_HOME/demo-base/webapps/ROOT $JETTY_BASE/webapps を実行します。独自の WAR ファイルでテストするには、$JETTY_BASE/webapps にアップロードします。詳細については、「ファイルのアップロードまたはダウンロード」をご参照ください。

      sudo java -jar $JETTY_HOME/start.jar --add-module=demos
    2. Jetty を起動します。

      説明

      Jetty はデフォルトでポート 8080 をリッスンします。ポート 8080 がすでに使用中かどうかを確認するには、sudo netstat -tunlp | grep 8080 を実行します。別のポート (例:8081) で Jetty を起動するには、nohup sudo java -jar $JETTY_HOME/start.jar jetty.http.port=8081 & を実行します。

      nohup sudo java -jar $JETTY_HOME/start.jar &
    重要

    jetty-base ディレクトリから次のコマンドを実行してください。

  8. デプロイメントを検証します。

    1. Jetty が実行中であることを確認します。

      ps aux | grep jetty

      Jetty が正常に起動した場合、出力には start.jar を含む Java プロセスが含まれます。

    2. ローカルマシンのブラウザで http://<ECS のパブリック IP アドレス>:8080 を開きます。Jetty のテストページが表示されたら、Java Web 環境のデプロイは成功です。

      説明

      ポートを変更した場合は、8080 をご自身のポート番号に置き換え、セキュリティグループがそのポートでのインバウンドトラフィックを許可していることを確認してください。詳細については、「セキュリティグループルールの追加」をご参照ください。独自の WAR ファイルをデプロイした場合は、http://<ECS のパブリック IP アドレス>:8080/<パッケージ名> にアクセスしてアクセスを確認してください。

      image

Windows

重要

この手順は、Jetty 10、11、および 12 のみに適用されます。

この手順では、Jetty 12.0.16 をインストールします。異なるバージョンを使用する場合は、手順内のバージョン番号とディレクトリパスを置き換えてください。

  1. Windows インスタンスに接続します。詳細については、「ワークベンチを使用して RDP 経由で Windows インスタンスに接続」をご参照ください。

  2. Jetty の公式サイトから Jetty のインストールパッケージをダウンロードします。Jetty のバージョンによってサポートされる JDK のバージョンが異なります。ダウンロードする前に、バージョンの互換性テーブルを確認してください。

    image

    image

  3. ダウンロードしたパッケージをインストールディレクトリに展開します。この例では、パッケージは C:\download に展開されます。

    重要

    スペースを含まないパスに展開してください。

  4. JETTY_HOME 環境変数を設定します。

    1. [この PC] を右クリックし、[プロパティ] を選択します。image

    2. [バージョン情報] ページで、一番下までスクロールし、[システムの詳細設定] をクリックします。image

    3. [環境変数] をクリックします。image

    4. [システム環境変数] セクションで、[新規] をクリックします。変数名を JETTY_HOME に、変数の値を Jetty のインストールパス (例:C:\download\jetty-home-12.0.16) に設定します。[OK] をクリックします。image

    5. [OK] をクリックして保存します。

  5. jetty-base フォルダを作成します。この例では、フォルダは C:\download\jetty-base に作成されます。

    image

  6. jetty-base フォルダを初期化します。

    1. jetty-base フォルダに移動し、アドレスバーに cmd と入力して Enter キーを押し、コマンドプロンプトを開きます。image

    2. 必要なモジュールでフォルダを初期化します。

      java -jar %JETTY_HOME%/start.jar --add-module=http,server,deploy

      コマンドが実行されると、jetty-base には start.d ディレクトリと他のサーバー構成ファイルが含まれます。

      image

  7. サンプルアプリケーションをデプロイし、Jetty を起動します。

    1. Jetty のサンプル Web アプリケーションをデプロイします。Jetty 10 または 11 の場合は、demosdemo に置き換えます。

      説明

      独自の WAR ファイルでテストするには、<jetty-base>\webapps (例:C:\download\jetty-base\webapps) にアップロードします。詳細については、「ファイルのアップロードまたはダウンロード」をご参照ください。

      java -jar %JETTY_HOME%/start.jar --add-module=demos
    2. Jetty を起動します。Jetty が実行中はコマンドプロンプトウィンドウを開いたままにしてください。

      説明

      Jetty はデフォルトでポート 8080 をリッスンします。ポート 8080 が使用中かどうかを確認するには、netstat -ano | findstr :8080 を実行します。別のポート (例:8081) で起動するには、java -jar %JETTY_HOME%/start.jar jetty.http.port=8081 を実行します。

      java -jar %JETTY_HOME%/start.jar
  8. デプロイメントを検証します。ローカルマシンのブラウザで http://<ECS のパブリック IP アドレス>:8080 を開きます。Jetty のテストページが表示されたら、Java Web 環境のデプロイは成功です。

    説明

    ポートを変更した場合は、8080 をご自身のポート番号に置き換え、セキュリティグループがそのポートでのインバウンドトラフィックを許可していることを確認してください。詳細については、「セキュリティグループルールの追加」をご参照ください。独自の WAR ファイルをデプロイした場合は、http://<ECS のパブリック IP アドレス>:8080/<パッケージ名> にアクセスしてアクセスを確認してください。

    image

次のステップ

  • Web サイトの構築:Jetty が実行された後、インスタンス上で Web サイトを構成し、そのパブリック IP アドレスにドメイン名を紐付けます。詳細については、「Web サイトの構築」をご参照ください。

  • アプリケーションのデプロイ:アプリケーションの WAR ファイルを $JETTY_BASE/webapps (Linux) または <jetty-base>\webapps (Windows) にコピーします。Jetty が起動すると、アプリケーションは http://<ECS のパブリック IP アドレス>:8080/<パッケージ名> でアクセス可能になります。Jetty の構成詳細については、「Jetty オペレーションガイド」をご参照ください。

  • データベースの追加:アプリケーションがデータベースを必要とする場合は、ApsaraDB RDS for MySQL インスタンスに接続するか、ECS インスタンスに直接 MySQL をデプロイします。詳細については、「データベース概要」をご参照ください。

  • 可用性の向上:Server Load Balancer (SLB) インスタンスを使用して、複数の Jetty インスタンスにトラフィックを分散します。詳細については、「はじめに」をご参照ください。

  • ファイルの転送: オンプレミスのファイルをインスタンスにアップロードします。詳細については、「Linux インスタンスにファイルをアップロードまたはダウンロードする」をご参照ください。

トラブルシューティング

デプロイ後に http://<ECS のパブリック IP アドレス>:8080 にアクセスできない

最も一般的な原因は、ポートのブロックと Jetty ポートの変更の 2 つです。

ファイアウォールまたは SELinux によるブロック

Linux では、システムのファイアウォールまたは Security-Enhanced Linux (SELinux) が外部接続をブロックしていないか確認してください。必要に応じて無効にします。

Windows では、Windows ファイアウォールがポート 8080 をブロックしていないことを確認してください。詳細については、「Windows インスタンスのシステムファイアウォールの管理」をご参照ください。

Jetty が別のポートをリッスンしている

カスタムポートで Jetty を起動した場合は、URL をそれに合わせて更新し、セキュリティグループがそのポートでのインバウンドトラフィックを許可していることを確認してください。詳細については、「セキュリティグループルールの追加」をご参照ください。