

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

# アプリケーションバージョンの管理
<a name="applications-versions"></a>

このトピックでは、アプリケーションバージョンとその作成および管理方法について説明します。

Elastic Beanstalk は、ソースコードをアップロードするたびにアプリケーションバージョンを作成します。これは通常、[環境管理コンソール](environments-console.md)または [EB CLI](eb-cli3.md) を使用して環境を作成するか、コードをアップロードしてデプロイするときに発生します。Elastic Beanstalk は、アプリケーションのライフサイクルポリシーおよびアプリケーションの削除時に、これらのアプリケーションバージョンを削除します。アプリケーションライフサイクルポリシーの詳細については、「[アプリケーションバージョンライフサイクルの設定](applications-lifecycle.md)」を参照してください。

また、[アプリケーション管理コンソール](applications-console.md)または EB CLI コマンド **[**eb appversion**](eb3-appversion.md)** を使用して、デプロイすることなくソースバンドルをアップロードすることもできます。Elastic Beanstalk によって、ソースバンドルは Amazon Simple Storage Service (Amazon S3) に保存されます。自動的に削除されることはありません。

新しいアプリケーションバージョンの作成時にタグを適用できます。また、既存のアプリケーションバージョンのタグを編集できます。詳細については、「[アプリケーションバージョンのタグ付け](applications-versions-tagging.md)」を参照してください。

## アプリケーションバージョンの作成
<a name="applications-versions.creating"></a>

EB CLI を使用して新しいアプリケーションバージョンを作成することもできます。詳細については、*EB CLI コマンド*のチャプターの「[**eb appversion**](eb3-appversion.md)」を参照してください。

**注記**  
時間の経過とともに、アプリケーションで、多数のアプリケーションバージョンが累積されることがあります。ストレージ領域を節約し、[アプリケーションバージョンのクォータ](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html#limits_elastic_beanstalk)に達しないようにするには、不要になったアプリケーションバージョンを削除することをお勧めします。

次の手順で指定したファイルは、アプリケーションに関連付けられます。アプリケーションのバージョンを、新しい環境または既存の環境にデプロイできます。

**新しいアプリケーションバージョンを作成するには**

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

1. ナビゲーションペインで、[**アプリケーション**] を選択し、リストからアプリケーションの名前を選択します。

1. ナビゲーションペインで、アプリケーション名を見つけ、[**アプリケーションバージョン**] を選択します。

1. **アップロード** を選択します。画面上のフォームを使用して、アプリケーションの[ソースバンドル](applications-sourcebundle.md)をアップロードします。
**注記**  
ソースバンドルのファイルサイズの上限は 500 MB です。

1. 必要に応じて、簡単な説明を入力し、タグのキーと値を追加します。

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

## アプリケーションバージョンの削除
<a name="applications-versions.deleting"></a>

EB CLI を使用してアプリケーションバージョンを削除することもできます。詳細については、*EB CLI コマンド*のチャプターの「[**eb appversion**](eb3-appversion.md)」を参照してください。

**注記**  
アプリケーションバージョンを削除しても、現在そのバージョンで実行されている環境に影響はありません。

また、アプリケーションバージョンライフサイクルの設定を定義して、古いバージョンを自動的に削除するように Elastic Beanstalk を設定することもできます。これらのライフサイクルを設定すると、新しいアプリケーションバージョンを作成するときにそれが適用されます。例えば、アプリケーションバージョンの最大数を 25 に設定している場合、26 番目のバージョンがアップロードされると Elastic Beanstalk によって最も古いバージョンが削除されます。90 日間の最長有効期間を設定すると、新しいバージョンがアップロードされた際に 90 日を超えているものが削除されます。詳細については、「[アプリケーションバージョンライフサイクルの設定](applications-lifecycle.md)」を参照してください。

**アプリケーションバージョンを削除するには**

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

1. ナビゲーションペインで、[**アプリケーション**] を選択し、リストからアプリケーションの名前を選択します。

1. ナビゲーションペインで、アプリケーション名を見つけ、[**アプリケーションバージョン**] を選択します。

1. 削除するアプリケーションバージョンを 1 つ以上選択します。

1. [**アクション**] を選択してから、[**削除**] をクリックします。

1. (オプション) これらのアプリケーションバージョンのアプリケーションソースバンドルを Amazon Simple Storage Service (Amazon S3) バケットに残すには、[**Delete versions from Amazon S3 (Amazon S3 からのバージョンの削除)**] ボックスをオフにします。

1. **[削除]** を選択します。

Amazon S3 からソースバンドルを削除することを選択しなかった場合でも、Elastic Beanstalk によってそのバージョンはレコードから削除されます。ただし、ソースバンドルは [Elastic Beanstalk ストレージバケット](AWSHowTo.S3.md)に残ります。アプリケーションバージョンのクォータは Elastic Beanstalk の追跡対象のバージョンにのみ適用されます。したがって、必要ならば、クォータ内に収まるようにバージョンを削除できますが、すべてのソースバンドルは Amazon S3 で保持することができます。

**注記**  
アプリケーションバージョンのクォータはソースバンドルには適用されませんが、依然として Amazon S3 料金が発生し、必要な時間を超えて個人情報が保持されることがあります。Elastic Beanstalk によって、ソースバンドルが自動的に削除されることはありません。必要がなくなったらソースバンドルを削除する必要があります。

# アプリケーションバージョンライフサイクルの設定
<a name="applications-lifecycle"></a>

このトピックでは、Elastic Beanstalk が特定の環境内のアプリケーションのバージョンに適用するポリシーとクォータについて説明します。これには、アプリケーションバージョンが環境に存在する期間の長さも含まれます。

Elastic Beanstalk コンソールまたは EB CLI を使用してアプリケーションの新しいバージョンをアップロードするたびに、Elastic Beanstalk によって[アプリケーションバージョン](applications-versions.md)が作成されます。使用しなくなったバージョンを削除しないと、最終的には[アプリケーションバージョンのクォータ](https://docs.aws.amazon.com/general/latest/gr/elasticbeanstalk.html#limits_elastic_beanstalk)に到達し、そのアプリケーションの新しいバージョンを作成できなくなります。

アプリケーションに*アプリケーションバージョンライフサイクルポリシー*を適用することで、クォータに到達するのを回避できます。ライフサイクルポリシーにより、古いアプリケーションバージョンを削除するか、アプリケーションの合計数が指定した数を超えた場合にアプリケーションバージョンを削除するよう Elastic Beanstalk に指示されます。

Elastic Beanstalk は、新しいアプリケーションバージョンを作成するたびにアプリケーションのライフサイクルポリシーを適用し、ライフサイクルポリシーが適用されるたびに、最大 100 個のバージョンを削除します。Elastic Beanstalk は、新しいバージョンを作成した後で旧バージョンを削除します。新しいバージョンは、ポリシーで定義した最大バージョン数にはカウントされません。

Elastic Beanstalk は、環境で現在使用されているアプリケーションバージョン、またはポリシーがトリガーされる 10 週前までに終了した環境にデプロイされているアプリケーションバージョンは削除しません。

アプリケーションバージョンのクォータはリージョン内のすべてのアプリケーションに適用されます。複数のアプリケーションがある場合は、クォータに達するのを回避するため、各アプリケーションを適切なライフサイクルポリシーで設定します。例えば、リージョンに 10 個のアプリケーションがあり、クォータが 1,000 アプリケーションバージョンである場合、すべてのアプリケーションについて、クォータを 99 アプリケーションにしたライフサイクルポリシーを設定するか、合計が 1,000 アプリケーションバージョン未満である限り、各アプリケーションにその他の値を設定することを検討してください。Elastic Beanstalk は、アプリケーションバージョンの作成に成功した場合のみポリシーを適用するため、既にクォータに達している場合は、新しいバージョンを作成する前に、いくつかのバージョンを手動で削除する必要があります。

デフォルトでは、Elastic Beanstalk は、データの損失を防ぐために、アプリケーションバージョンの[ソースバンドル](applications-sourcebundle.md)を Amazon S3 に残します。ソースバンドルを削除すると、領域を節約できます。

Elastic Beanstalk CLI および API を介してライフサイクル設定を定義できます。詳細については、「[**eb appversion**](eb3-appversion.md)」、「[CreateApplication](https://docs.aws.amazon.com/elasticbeanstalk/latest/api/API_CreateApplication.html)」(`ResourceLifecycleConfig` パラメータを使用)、「[UpdateApplicationResourceLifecycle](https://docs.aws.amazon.com/elasticbeanstalk/latest/api/API_UpdateApplicationResourceLifecycle.html)」を参照してください。

## コンソールでアプリケーションのライフサイクル設定を指定する
<a name="applications-lifecycle-console"></a>

Elastic Beanstalk コンソールでライフサイクル設定を指定できます。

**アプリケーションのライフサイクル設定を指定するには**

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

1. ナビゲーションペインで、[**アプリケーション**] を選択し、リストからアプリケーションの名前を選択します。

1. ナビゲーションペインで、アプリケーション名を見つけ、[**アプリケーションバージョン**] を選択します。

1. **[設定]** を選択します。

1. 画面上のフォームを使用して、アプリケーションのライフサイクル設定を構成します。

1. **[保存]** を選択します。

[設定] ページでは以下の操作を実行できます。
+ アプリケーションバージョンの合計数またはアプリケーションバージョンの期間に基づいて、ライフサイクル設定を構成します。
+ アプリケーションバージョンが削除されるときにソースバンドルを S3 から削除するかどうかを指定します。
+ アプリケーションバージョンの削除に使用するロールを指定します。バージョン削除に必要なすべてのアクセス許可を含めるには、`aws-elasticbeanstalk-service-role` という名前のデフォルトの Elastic Beanstalk サービスロールを選択するか、Elastic Beanstalk 管理サービスポリシーを使用して別のサービスロールを選択します。詳細については、「[Elastic Beanstalk サービスロールの管理](iam-servicerole.md)」を参照してください。

# アプリケーションバージョンのタグ付け
<a name="applications-versions-tagging"></a>

このトピックでは、Elastic Beanstalk アプリケーションバージョンにタグ付けする利点と、タグを管理する方法について説明します。

 AWS Elastic Beanstalk アプリケーションバージョンにタグを適用できます。タグは、 AWS リソースに関連付けられたキーと値のペアです。Elastic Beanstalk リソースのタグ付け、ユースケース、タグのキーと値の制約、サポートされているリソースタイプの詳細については、「[Elastic Beanstalk アプリケーションリソースのタグ付け](applications-tagging-resources.md)」を参照してください。

アプリケーションバージョンを作成するときにタグを指定できます。既存のアプリケーションバージョンでは、タグの追加や削除、既存タグの値の更新ができます。アプリケーションバージョンごとに最大 50 個のタグを追加できます。

## アプリケーションバージョンの作成時にタグを追加する
<a name="applications-versions-tagging.create"></a>

Elastic Beanstalk コンソールを使用して[環境を作成](environments-create-wizard.md)する際に、アプリケーションコードのバージョンをアップロードすることを選択すると、新しいアプリケーションバージョンに関連付けるタグのキーと値を指定できます。

Elastic Beanstalk コンソールを使用して、環境ですぐには使用しない[アプリケーションバージョンをアップロード](applications-versions.md)することもできます。アプリケーションバージョンをアップロードするときに、タグキーと値を指定できます。

 AWS CLI または他の API ベースのクライアントで、 **[create-application-version](https://docs.aws.amazon.com/cli/latest/reference/elasticbeanstalk/create-application-version.html)** コマンドの `--tags`パラメータを使用してタグを追加します。

```
$ aws elasticbeanstalk create-application-version \
      --tags Key=mytag1,Value=value1 Key=mytag2,Value=value2 \
      --application-name my-app --version-label v1
```

EB CLI を使用して環境を作成または更新すると、デプロイしたコードからアプリケーションバージョンが作成されます。EB CLI での作成時にアプリケーションバージョンに直接タグ付けする方法はありません。既存のアプリケーションバージョンにタグを追加する方法については、次のセクションを参照してください。

## 既存のアプリケーションバージョンのタグを管理する
<a name="applications-versions-tagging.manage"></a>

既存の Elastic Beanstalk アプリケーションバージョンでタグを追加、更新、削除できます。

**Elastic Beanstalk コンソールを使用してアプリケーションバージョンのタグを管理するには**

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

1. ナビゲーションペインで、[**アプリケーション**] を選択し、リストからアプリケーションの名前を選択します。

1. ナビゲーションペインで、アプリケーション名を見つけ、[**アプリケーションバージョン**] を選択します。

1. 管理するアプリケーションバージョンを選択します。

1. [**Actions (アクション)**] を選択して [**Manage tags (タグの管理)**] を選択します。

1. 画面上のフォームを使用して、タグを追加、更新、または削除します。

1. ページの最下部で **[適用]** を選択し変更を保存します。

EB CLI を使用してアプリケーションバージョンを更新する場合は、 **[eb tags](eb3-tags.md)** を使用してタグを追加、更新、削除、一覧表示します。

たとえば、次のコマンドでは、アプリケーションバージョンのタグを一覧表示します。

```
~/workspace/my-app$ eb tags --list --resource "arn:aws:elasticbeanstalk:us-east-2:my-account-id:applicationversion/my-app/my-version"
```

次のコマンドでは、`mytag1` タグを更新して `mytag2` タグを削除します。

```
~/workspace/my-app$ eb tags --update mytag1=newvalue --delete mytag2 \
      --resource "arn:aws:elasticbeanstalk:us-east-2:my-account-id:applicationversion/my-app/my-version"
```

オプションの完全なリストおよび詳細な例については、「`eb tags`」を参照してください。

 AWS CLI または他の API ベースのクライアントでは、 **[list-tags-for-resource](https://docs.aws.amazon.com/cli/latest/reference/elasticbeanstalk/list-tags-for-resource.html)** コマンドを使用してアプリケーションバージョンのタグを一覧表示します。

```
$ aws elasticbeanstalk list-tags-for-resource --resource-arn "arn:aws:elasticbeanstalk:us-east-2:my-account-id:applicationversion/my-app/my-version"
```

アプリケーションバージョンのタグを追加、更新、または削除するには、**[update-tags-for-resource](https://docs.aws.amazon.com/cli/latest/reference/elasticbeanstalk/update-tags-for-resource.html)** コマンドを使用します。

```
$ aws elasticbeanstalk update-tags-for-resource \
      --tags-to-add Key=mytag1,Value=newvalue --tags-to-remove mytag2 \
      --resource-arn "arn:aws:elasticbeanstalk:us-east-2:my-account-id:applicationversion/my-app/my-version"
```

追加するタグと更新するタグを **update-tags-for-resource** の `--tags-to-add` パラメータで指定します。存在していないタグが追加され、既存のタグの値が更新されます。

**注記**  
一部の EB CLI および AWS CLI コマンドを Elastic Beanstalk アプリケーションバージョンで使用するには、アプリケーションバージョンの ARN が必要です。ARN を取得するには、次のコマンドを使用します。  

```
$ aws elasticbeanstalk describe-application-versions --application-name my-app --version-label my-version
```