アプリケーションをデプロイする方法 - AWS Serverless Application Repository

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

アプリケーションをデプロイする方法

このセクションでは、AWS Management Console または AWS CLI を使用して AWS Serverless Application Repository からサーバレスアプリケーションをデプロイする手順を示します。

新しいアプリケーションのデプロイ (コンソール)

このセクションでは、AWS Management Console を使用して AWS Serverless Application Repository から新しいアプリケーションをデプロイする方法を示します。既存のアプリケーションの新しいバージョンをデプロイする手順については、「アプリケーションの更新」を参照してください。

アプリケーションの参照、検索、およびデプロイ

AWS Serverless Application Repository でアプリケーションを検索、設定、およびデプロイするには、次の手順を使用します。

AWS Serverless Application Repository でアプリケーションを検索して設定するには
  1. AWS Serverless Application Repository のパブリックホームページ を開くか、AWS Lambda コンソールを開きます。[Create function (関数の作成)] を選択し、[Browse serverless app repository (サーバーレスアプリケーションリポジトリを参照)] を選択します。

  2. アプリケーションを参照または検索します。

    注記

    カスタム IAM ロールまたはリソースポリシーが含まれているアプリケーションを表示するには、[Show apps that create custom IAM roles or resource policies (カスタム IAM ロールまたはリソースポリシーを作成するアプリを表示)] チェックボックスをオンにします。カスタム IAM ロールとリソースポリシーの詳細については、「Acknowledging Application Capabilities (アプリケーション承認機能)」を参照してください。

  3. アプリケーションを選択して、そのアクセス許可、機能、AWS のお客様がデプロイした回数などの詳細を表示します。

    アプリケーションをデプロイしようとしている AWS リージョンのデプロイ数が表示されます。

  4. アプリケーションの詳細ページで、AWS SAM テンプレート、ライセンス、および readme ファイルを表示して、アプリケーションのアクセス許可およびリソースを確認します。このページで、公開共有されているアプリケーションの [Source code URL (ソースコード URL)] リンクを見つけることもできます。アプリケーションにネストされたアプリケーションが含まれている場合、このページでネストされたアプリケーションの詳細を表示することもできます。

  5. [Application settings (アプリケーションの設定)] セクションでアプリケーションを設定します。特定のアプリケーションを設定する際のガイダンスについては、アプリケーションの readme ファイルを参照してください。

    たとえば、設定要件には、アプリケーションにアクセスさせるリソースの名前の指定が含まれる場合があります。Amazon DynamoDB テーブル、Amazon S3 バケット、または Amazon API Gateway API などのリソースです。

  6. [Deploy‬] (デプロイ) をクリックします。これにより、[Deployment status] (デプロイのステータス) ページに移動します。

    注記

    アプリケーションに承認を必要とする機能がある場合は、アプリケーションをデプロイする前に [I acknowledge this application creates custom IAM roles or resource polices (このアプリケーションがカスタム IAM ロールまたはリソースポリシーを作成することを承認します)] チェックボックスをオンにします。そうしないと、エラーが発生します。カスタム IAM ロールとリソースポリシーの詳細については、「Acknowledging Application Capabilities (アプリケーション承認機能)」を参照してください。

  7. [Deployment status (デプロイのステータス)] ページで、デプロイの進捗状況を表示できます。デプロイが完了するのを待っている間に、他のアプリケーションを検索して参照し、Lambda コンソールからこのページに戻ることができます。

アプリケーションが正常にデプロイされたら、既存の AWS ツールを使用して作成済みのリソースを確認し、管理できます。

新しいアプリケーションのデプロイ (AWS CLI)

このセクションでは、AWS CLI を使用して AWS Serverless Application Repository から新しいアプリケーションをデプロイする方法を示します。既存のアプリケーションの新しいバージョンをデプロイする手順については、「アプリケーションの更新」を参照してください。

アプリケーション機能の検索と承認 (AWS CLI)

AWS CLI を使用してアプリケーションの機能を確認するには、次の手順に従います。

  1. アプリケーションの機能を確認してください。AWS CLI次のコマンドを使用して、アプリケーションの機能を確認します。

    aws serverlessrepo get-application \ --application-id application-arn

    requiredCapabilities レスポンスプロパティには、アプリケーションをデプロイする前に、承認する必要があるアプリケーション機能が一覧表示されます。AWSSDK の GetApplication API を使用してこのデータを取得することもできます。

  2. チェンジセットを作成します。AWS CloudFormation 変更セットを作成する際に、必要な機能のセットを提供する必要があります。たとえば、次の AWS CLI コマンドを使用し、アプリケーションの機能を承認して、デプロイします。

    aws serverlessrepo create-cloud-formation-change-set \ --application-id application-arn \ --stack-name unique-name-for-cloud-formation-stack \ --capabilities list-of-capabilities

    このコマンドが正常に実行されると、変更セット ID が返されます。この変更セット ID は次のステップで必要になります。また、AWS SDK で CreateCloudFormationChangeSet API を使用して変更セットを作成することもできます。

    たとえば、AWS CLI次のコマンドは、AWS::IAM::Roleカスタム名のリソースと 1 つ以上のネストされたアプリケーションを含むアプリケーションを承認します。

    aws serverlessrepo create-cloud-formation-change-set \ --application-id application-arn \ --stack-name unique-name-for-cloud-formation-stack \ --capabilities CAPABILITY_NAMED_IAM CAPABILITY_AUTO_EXPAND
  3. チェンジセットを実行します。変更セットを実行すると、デプロイが実際に行われます。前のステップで変更セットを作成したときに返された変更セット ID を指定します。

    次の AWS CLI コマンド例では、アプリケーションの変更セットを実行してアプリケーションをデプロイします。

    aws cloudformation execute-change-set \ --change-set-name changeset-id-arn

    また、AWS SDK で ExecuteChangeSet API を使用して変更セットを実行することもできます。

アプリケーションスタックの削除

AWS Serverless Application Repository を使用して以前にデプロイされたアプリケーションを削除するには、AWS CloudFormation スタックを削除する場合と同じ手順に従います。

  • AWS Management Console: AWS Management Console を使用してアプリケーションを削除する場合は、AWS CloudFormation ユーザーガイドAWS CloudFormation コンソールでのスタックの削除を参照してください。

  • AWS CLI: AWS CLI を使用してアプリケーションを削除する場合は、AWS CloudFormation ユーザーガイドスタックの削除を参照してください。