

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# Java のその他の Elastic Beanstalk アプリケーションの例とチュートリアル
<a name="java-getstarted"></a>

このセクションでは、その他のアプリケーションとチュートリアルについて説明します。このトピックで前述した [Java の QuickStart](java-quickstart.md) および [Tomcat での Java の QuickStart](tomcat-quickstart.md) トピックでは、EB CLI を使用したサンプル Java アプリケーションの起動について説明します。

で Java アプリケーションの使用を開始するには AWS Elastic Beanstalk、最初のアプリケーションバージョンとしてアップロードし、 環境にデプロイするアプリケーション[ソースバンドル](applications-sourcebundle.md)が必要です。環境を作成すると、スケーラブルなウェブアプリケーションを実行するために必要なすべての AWS リソースが Elastic Beanstalk によって割り当てられます。

## サンプル Java アプリケーションで環境を起動する
<a name="java-getstarted-samples"></a>

Elastic Beanstalk は、各プラットフォームの単一ページのサンプルアプリケーションと、Amazon RDS や言語、プラットフォーム固有の機能や APIs などの追加 AWS リソースの使用を示すより複雑な例を提供します。

単一ページのサンプルは、環境を作成するときに取得する同じコードであり、独自のソースコードを提供する必要はありません。複雑なサンプルアプリケーションは GitHub でホストされていますが、Elastic Beanstalk 環境にデプロイする前にはコンパイルやビルドが必要になる場合があります。

 


**サンプル**  

|  名前  |  サポートされるバージョン  |  環境タイプ  |  送信元  |  説明  | 
| --- | --- | --- | --- | --- | 
|  Tomcat (単一ページ)  |  すべての *Tomcat with Corretto* プラットフォームブランチ  |  ウェブサーバー ワーカー  |   [tomcat.zip](samples/tomcat.zip)   |  1 ページ（`index.jsp`）がウェブサイトのルートに表示されるように設定された Tomcat ウェブアプリケーションです。 [ワーカー環境](using-features-managing-env-tiers.md)では、このサンプルには、1 分に 1 回 [`cron.yaml`] を呼び出すスケジュール済みタスク設定する [`scheduled.jsp`] ファイルが含まれます。`scheduled.jsp` が呼び出されると、`/tmp/sample-app.log` のログファイルに書き込まれます。最後に、設定ファイルが `.ebextensions` に含められれます。この設定ファイルにより、`/tmp/` のログは、環境ログがリクエストされたときに Elastic Beanstalk が読み取る場所にコピーされます。 このサンプルを実行している環境で [X-Ray の統合を有効にする](environment-configuration-debugging.md)と、アプリケーションは X-Ray に関する追加のコンテンツを表示し、X-Ray コンソールで表示できるデバッグ情報を生成するオプションを提供します。  | 
|  Corretto (単一ページ)  |  Corretto 11 Corretto 8  |  ウェブサーバー  |  [corretto.zip](samples/corretto.zip)  |  `Buildfile` 設定ファイルおよび `Procfile` 設定ファイルを使用する Corretto アプリケーションです。 このサンプルを実行している環境で [X-Ray の統合を有効にする](environment-configuration-debugging.md)と、アプリケーションは X-Ray に関する追加のコンテンツを表示し、X-Ray コンソールで表示できるデバッグ情報を生成するオプションを提供します。  | 
|  Scorekeep  | Java 8 | ウェブサーバー | [クローン the repo at GitHub.com](https://github.com/awslabs/eb-java-scorekeep) |  *Scorekeep* は、Spring フレームワークを使ってユーザー、セッション、およびゲームを作成および管理するためのインターフェイスを提供する、RESTful ウェブ API です。API は、HTTP を介して API を使用する Angular 1.5 ウェブアプリを持つバンドルです。 アプリケーションは、Java SE プラットフォームの機能を使って依存関係をダウンロードし、オンインスタンスを構築することで、ソースバンドルのサイズを最小化します。また、アプリケーションには、プロキシを通じてポート 80 で静的にフロントエンドウェブアプリに対応するデフォルト設定を上書きし、`/api` で実行される API に `localhost:5000` 以下のパスをルーティングする nginx 設定ファイルが含まれています。 Scorekeep には、`xray` で使用する Java アプリケーションの設定方法を示す AWS X-Rayブランチも含まれます。サーブレットフィルターを使用した受信 HTTP リクエストの計測、自動および手動 AWS SDK クライアントの計測、レコーダー設定、送信 HTTP リクエストと SQL クライアントの計測を示します。 手順については readme を参照するか、[AWS X-Ray 入門チュートリアル](https://docs.aws.amazon.com/xray/latest/devguide/xray-gettingstarted.html)を使用して X-Ray でアプリケーションをでお試しください。  | 
|  Does it Have Snakes?  | Tomcat 8 と Java 8 | ウェブサーバー | [クローン the repo at GitHub.com](https://github.com/awslabs/eb-tomcat-snakes) |  *Does it Have Snakes?* は、Elastic Beanstalk 設定ファイル、Amazon RDS、JDBC、PostgreSQL、サーブレット、JSP、簡易タグのサポート、タグファイル、Log4J、ブートストラップ、Jackson の使用方法を示す Tomcat ウェブアプリケーションです。 このプロジェクトのソースコードには、クラスファイルにサーブレットとモデルをコンパイルし、Elastic Beanstalk 環境にデプロイできるウェブアーカイブに必要ファイルをパッケージする、最小限のビルドスクリプトが含まれています。完全な手順については、プロジェクトのリポジトリ内の readme ファイルを参照してください。  | 
| Locust Load Generator | Java 8 | ウェブサーバー | [クローン the repo at GitHub.com](https://github.com/awslabs/eb-locustio-sample) |  別の Elastic Beanstalk 環境で実行している別のウェブアプリケーションの負荷テストに使用できるウェブアプリケーションです。`Buildfile` ファイル、`Procfile` ファイル、DynamoDB、[Locust ](http://locust.io/)、オープンソースの負荷テストツールの使用方法を示しています。  | 

サンプルアプリケーションをダウンロードし、以下の手順に従って Elastic Beanstalk にデプロイします。

**アプリケーションで環境を起動する場合 (コンソール)**

1. [Elastic Beanstalk コンソール](https://console.aws.amazon.com/elasticbeanstalk)を開き、**リージョン**リストで を選択します AWS リージョン。

1. ナビゲーションペインで、**[アプリケーション]** を選択します。リストから既存のアプリケーションを選択します。[ アプリケーションの管理](applications.md) の手順に従って作成することもできます。

1. アプリケーションの概要ページで、**[新しい環境の作成]** を選択します。

   これにより、**[Create environment]** (環境を作成する) ウィザードが起動します。ウィザードには、新しい環境を作成するための一連のステップが用意されています。

1. **[環境枠]** では、**[ウェブサーバー環境]** または **[ワーカー環境]** の[環境枠](concepts.md#concepts-tier)を選択します。作成後に環境枠を変更することはできません。
**注記**  
[Windows Server プラットフォームの .NET](create_deploy_NET.md) はワーカー環境枠をsupport していません。

   **[アプリケーション情報]** フィールドは、以前に選択したアプリケーションに基づいてデフォルトで設定されます。

   **[環境情報]** では、アプリケーション名に基づいて **[環境名]** がデフォルトでグループ化されます。別の環境名を使用する場合は、フィールドに別の値を入力できます。必要に応じて **[ドメイン]** の名前を入力できます。入力しない場合、Elastic Beanstalk は値を自動的に生成します。必要に応じて **[環境の説明]** を入力することもできます。

1. **プラットフォーム** では、アプリケーションで使用される言語に一致するプラットフォームとプラットフォームブランチを選択します。
**注記**  
Elastic Beanstalk では、一覧表示されるほとんどのプラットフォームで複数の[バージョン](concepts.platforms.md)がサポートされています。デフォルトでは、選択したプラットフォームとプラットフォームブランチの推奨バージョンがコンソールによって選択されます。アプリケーションで異なるバージョンが必要な場合は、ここでそのバージョンを選択できます。サポートされているプラットフォームのバージョンについては、[Elastic Beanstalk でサポートされているプラットフォーム](concepts.platforms.md) を参照してください。

1. **アプリケーションコード**については、続行するためにいくつかの選択肢があります。
   + ソースコードを指定せずにデフォルトのサンプルアプリケーションを起動するには、**[サンプルアプリケーション]** を選択します。このアクションは、以前に選択したプラットフォームに対して Elastic Beanstalk が提供する単一ページアプリケーションを選択します。
   + このガイドからサンプルアプリケーションをダウンロードした場合、またはアプリケーション用に自分自身のソースコードがある場合は、次の手順を実行します。

     1. **[コードのアップロード]** を選択します。

     1. 次に **[ローカルファイル]** を選択し、**[アプリケーションをアップロード]** で **[ファイルを選択]** を選択します。

     1. クライアントマシンのオペレーティングシステムには、ダウンロードしたローカルファイルを選択するためのインターフェイスが表示されます。ソースバンドルファイルを選択して続行します。

1. **プリセット**の選択は、環境の目的によって異なります。
   + Elastic Beanstalk または開発環境について学ぶためにサンプル環境を作成する場合は、**単一インスタンス (無料利用枠の対象)** を選択します。
   + 本稼働環境またはロードバランシングを詳しく学ぶための環境を作成する場合は、**[高可用性]** オプションのいずれかを選択してください。

1. [**次へ**] を選択します。

**サービスアクセスを設定するには**  
次に、2 つのロールが必要です。*[サービスロール]* を使用すると、Elastic Beanstalk は EC2 インスタンスをモニタリングし、環境のプラットフォームをアップグレードできます。*[EC2 インスタンスプロファイル]* ロールは、ログの書き込みや他のサービスとのやり取りなどのタスクを許可します。

**サービスロールを作成または選択するには**

1. 以前に **[サービスロール]** を作成していて、既存のロールを選択する場合は、**[サービスロール]** ドロップダウンから値を選択し、サービスロールを作成するためのこれらの残りのステップをスキップします。

1. **[サービスロール]** に一覧表示された値がない場合、または新しいものを作成する場合は、次のステップに進みます。

1. **[サービスロール]** では、**[ロールの作成]** を選択します。

1. **[信頼できるエンティティタイプ]** で、**[AWS サービス]** を選択してください。

1. **[ユースケース]** では、**[Elastic Beanstalk – 環境]** を選択します。

1. [**次へ**] を選択します。

1. **[アクセス許可ポリシー]** に以下が含まれていることを確認し、**[次へ]** を選択します。
   + `AWSElasticBeanstalkEnhancedHealth`
   + `AWSElasticBeanstalkManagedUpdatesCustomerRolePolicy`

1. [**ロールの作成**] を選択してください。

1. **[サービスアクセスの設定]** タブに戻り、リストを更新して、新しく作成したサービスロールを選択します。

**EC2 インスタンスプロファイルを作成または選択するには**

1. 以前に **[EC2 インスタンスプロファイル]** を作成していて、既存の EC2 インスタンスプロファイルを選択する場合は、**[EC2 インスタンスプロファイル]** ドロップダウンから値を選択し、EC2 インスタンスプロファイルを作成するためのこれらの残りのステップをスキップします。

1. **[EC2 インスタンスプロファイル]** に一覧表示された値がない場合、または新しいものを作成する場合は、次のステップに進みます。

1. [**ロールの作成**] を選択してください。

1. **[信頼できるエンティティタイプ]** で、**[AWS サービス]** を選択します。

1. **[ユースケース]** では、**[Elastic Beanstalk – コンピューティング]** を選択します。

1. [**次へ**] を選択します。

1. **[アクセス許可ポリシー]** に以下が含まれていることを確認し、**[次へ]** を選択します。
   + `AWSElasticBeanstalkWebTier`
   + `AWSElasticBeanstalkWorkerTier`
   + `AWSElasticBeanstalkMulticontainerDocker`

1. [**ロールの作成**] を選択してください。

1. **[サービスアクセスの設定]** タブに戻り、リストを更新して、新しく作成した EC2 インスタンスプロファイルを選択します。

**アプリケーションの設定と作成を完了するには**

1. (オプション) EC2 キーペアを以前に作成している場合は、**[EC2 キーペア]** フィールドドロップダウンから選択できます。これを使用して、Elastic Beanstalk がアプリケーション用にプロビジョニングした Amazon EC2 インスタンスに安全にログインできます。このステップをスキップした場合、環境の作成後に EC2 キーペアをいつでも作成して割り当てることができます。詳細については、「[EC2 キーペア](using-features.managing.security.md#using-features.managing.security.keypair)」を参照してください。

1. **[Configure service access]** (サービスアクセスの設定) ページで **[Skip to Review]** (確認をスキップ) を選択します。

1. **[Review]** (レビュー) ページに、すべての選択内容の概要が表示されます。

   環境をさらにカスタマイズするには、設定する項目を含むステップの横にある **[Edit]** (編集) を選択します。以下のオプションは、環境の作成中にのみ設定できます。
   + 環境名
   + ドメイン名
   + プラットフォームのバージョニング
   + プロセッサ
   + ロードバランサーのタイプ
   + 階層

   次の設定は環境の作成後に変更できますが、新しいインスタンスあるいはその他のリソースをプロビジョニングする必要があり、適用までに長い時間がかかる場合があります。
   + インスタンスタイプ、ルートボリューム、キーペア、および AWS Identity and Access Management (IAM) ロール
   + 内部 Amazon RDS データベース
   + VPC

   すべての使用できる設定の詳細については、「[新しい環境の作成ウィザード](environments-create-wizard.md)」を参照してください。

1. ページ下部の **[Submit]** (送信) を選択して、新しい環境の作成を開始します。

## 次の手順
<a name="java-getstarted-next"></a>

環境でアプリケーションを実行すると、アプリケーションの[新しいバージョン](using-features.deploy-existing-version.md)や、まったく異なるアプリケーションをいつでもデプロイできるようになります。新しいアプリケーションバージョンのデプロイは、プロビジョニングや EC2 インスタンスの再開が必要ないため、非常に素早く行えます。

サンプルアプリケーションを 1 つか 2 つデプロイし、Java アプリケーションをローカルで開発および実行する準備が整ったら、[次のセクション](java-development-environment.md)を参照して、必要なすべてのツールやライブラリとともに Java 開発環境を設定します。