App Runner への新しいアプリケーションバージョンのデプロイ - AWS App Runner

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

App Runner への新しいアプリケーションバージョンのデプロイ

サービスを作成する場合 AWS App Runnerでは、コンテナイメージまたはソースリポジトリなどのアプリケーションソースを設定します。App Runner は、 サービスを実行するためのリソースをプロビジョニングし、そのリソースにアプリケーションをデプロイします。

このトピックでは、新しいバージョンが利用可能になったときにアプリケーションソースを App Runner サービスに再デプロイする方法について説明します。これは、イメージリポジトリの新しいイメージバージョンでも、コードリポジトリの新しいコミットでもかまいません。App Runner には、自動手動 の 2 つのデプロイ方法があります。

デプロイ方法

App Runner には、アプリケーションのデプロイの開始方法を制御するための以下の方法が用意されています。

自動デプロイ

サービスの継続的な統合とデプロイ (CI/CD) 動作が必要な場合は、自動デプロイを使用します。App Runner は、イメージまたはコードリポジトリの変更をモニタリングします。

イメージリポジトリ – 新しいイメージバージョンをイメージリポジトリにプッシュするか、コードリポジトリに新しいコミットをプッシュするたびに、App Runner はユーザー側でそれ以上のアクションを行わずに、そのバージョンをサービスに自動的にデプロイします。

コードリポジトリソースディレクトリ に変更を加える新しいコミットをコードリポジトリにプッシュするたびに、App Runner はリポジトリ全体をデプロイします。ソースディレクトリの変更のみが自動デプロイをトリガーするため、ソースディレクトリの場所が自動デプロイの範囲にどのように影響するかを理解することが重要です。

  • 最上位ディレクトリ (リポジトリルート) — サービスの作成時にソースディレクトリに設定されたデフォルト値です。ソースディレクトリがこの値に設定されている場合、リポジトリ全体がソースディレクトリ内にあることを意味します。したがって、ソースリポジトリにプッシュするすべてのコミットは、この場合はデプロイをトリガーします。

  • リポジトリルートではないディレクトリパス (デフォルト以外)ソースディレクトリ内でプッシュされる変更のみが自動デプロイをトリガーするため、ソースディレクトリにないリポジトリにプッシュされる変更は自動デプロイをトリガーしません。そのため、手動デプロイを使用して、ソースディレクトリの外部にプッシュする変更をデプロイする必要があります。

注記

App Runner は、Amazon ECR Public イメージ、および別の に属する Amazon ECRリポジトリ内のイメージの自動デプロイをサポートしていません。 AWS アカウントは、サービスが存在するアカウントよりも多くなります。

手動デプロイ

サービスへの各デプロイを明示的に開始する場合は、手動デプロイを使用します。サービス用に設定したリポジトリにデプロイする新しいバージョンがある場合は、デプロイを開始します。詳細については、「手動デプロイ」を参照してください。

注記

手動デプロイを実行すると、App Runner は完全なリポジトリからソースをデプロイします。

サービスのデプロイ方法は、次の方法で設定できます。

  • コンソール – 作成している新しいサービスまたは既存のサービスについては、ソースとデプロイ設定ページのデプロイ設定セクションで、手動または自動を選択します

    App Runner デプロイ方法の設定
  • API または AWS CLICreateServiceまたは UpdateServiceアクションの呼び出しで、手動デプロイFalseの場合は SourceConfiguration パラメータAutoDeploymentsEnabledのメンバーを に設定し、自動デプロイTrueの場合は に設定します。

自動デプロイと手動デプロイの比較

自動デプロイと手動デプロイの両方が同じ結果になります。どちらの方法でもリポジトリ全体がデプロイされます。

2 つの方法の違いは、トリガーメカニズムです。

  • 手動デプロイは、コンソールからのデプロイ、 への呼び出しによってトリガーされます。 AWS CLI、または App Runner への呼び出しAPI。以下の手動デプロイセクションでは、これらの手順について説明します。

  • 自動デプロイは、ソースディレクトリ の内容内の変更によってトリガーされます。

手動デプロイ

手動デプロイでは、サービスへの各デプロイを明示的に開始する必要があります。アプリケーションイメージまたはコードの新しいバージョンをデプロイする準備ができたら、以下のセクションを参照して、コンソールと を使用してデプロイを実行する方法を確認できますAPI。

注記

手動デプロイを実行すると、App Runner は完全なリポジトリからソースをデプロイします。

次のいずれかの方法を使用して、アプリケーションのバージョンをデプロイします。

App Runner console
App Runner コンソールを使用してデプロイするには
  1. App Runner コンソール を開き、リージョンリストで を選択します。 AWS リージョン.

  2. ナビゲーションペインで、サービス を選択し、App Runner サービスを選択します。

    コンソールには、サービスダッシュボードにサービスの概要 が表示されます。

    アクティビティリストを表示する App Runner サービスダッシュボードページ
  3. [デプロイ] を選択します。

    結果: 新しいバージョンのデプロイが開始されます。サービスダッシュボードページで、サービスのステータス進行中のオペレーション に変わります。

  4. デプロイが終了するのを待ちます。サービスダッシュボードページで、サービスのステータス実行中の に戻ります。

  5. デプロイが成功したことを確認するには、サービスダッシュボードページで、デフォルトのドメイン値を選択します。これはサービスのウェブサイトURLの です。ウェブアプリケーションを検査または操作し、バージョンの変更を確認します。

    注記

    App Runner アプリケーションのセキュリティを強化するために、*.awsapprunner.com ドメインはパブリックサフィックスリスト (PSL) に登録されています。セキュリティを強化するために、App Runner アプリケーションのデフォルトドメイン名で機密性の高い Cookie を設定する必要がある場合は、__Host-プレフィックス付きの Cookie を使用することをお勧めします。この手法は、クロスサイトリクエストの偽造の試み () からドメインを保護するのに役立ちますCSRF。詳細については、Mozilla 開発者ネットワークの「Set-Cookie」ページを参照してください。

App Runner API or AWS CLI

App Runner APIまたは を使用してデプロイするには AWS CLI、 StartDeploymentAPIアクションを呼び出します。渡す唯一のパラメータはサービス ですARN。サービスの作成時にアプリケーションのソースロケーションをすでに設定していると、App Runner は新しいバージョンを見つけることができます。呼び出しが成功したレスポンスを返すと、デプロイが開始されます。