AWS Elastic Beanstalk
開発者ガイド

「Launch Now URL」の作成

誰でも迅速に事前定義されたウェブアプリケーションを AWS Elastic Beanstalk にデプロイして実行できるように、カスタム URL を作成できます。この URL は「Launch Now URL」と呼ばれます。「Launch Now URL」は、たとえば Elastic Beanstalk 上で実行するために構築されたウェブアプリケーションを紹介する場合に必要になる可能性があります。「Launch Now URL」により、パラメータを使用して、必要な情報を事前に Create Application ウィザードに追加することができます。この操作を行うと、誰でも URL リンクを使用して、わずかなステップ操作によりウェブアプリケーションソースで Elastic Beanstalk 環境を起動できます。つまり、ユーザーはアプリケーションソースバンドルの場所を手動でアップロードまたは指定したり、ウィザードで追加の入力を行ったりする必要がありません。

「Launch Now URL」は、アプリケーションの作成に必要な最小限の情報 (アプリケーション名、ソリューションスタック、インスタンスタイプ、および環境タイプ) を Elastic Beanstalk に提供します。Elastic Beanstalk は、カスタム「Launch Now URL」で明示的に指定されていない他の設定詳細にデフォルト値を使用します。

「Launch Now URL」は、標準の URL 構文を使用します。詳細については、「RFC 3986 - Uniform Resource Identifier (URI): 一般的な構文」を参照してください。

URL パラメータ

URL は次のパラメータを含める必要があります。大文字と小文字は区別されます。

  • [リージョン] – AWS のリージョンを指定します。Elastic Beanstalk がサポートするリージョンのリストについては、アマゾンウェブサービス全般のリファレンスの「AWS Elastic Beanstalk」を参照してください。

  • [applicationName] – アプリケーションの名前を指定します。Elastic Beanstalk は、他のアプリケーションと区別するために AWS マネジメントコンソール にアプリケーション名を表示します。デフォルトでは、アプリケーションの名前は環境の名前と環境 URL を基に作成されます。

  • [プラットフォーム] – 環境で使用するプラットフォームのバージョンを指定します。次のいずれかのメソッドを使用し、選択したものを URL エンコードします。

    • バージョンのないプラットフォーム ARN を指定します。Elastic Beanstalk は、対応するプラットフォームのメジャーバージョンの最新のプラットフォームバージョンを選択します。たとえば、最新の Python 3.6 プラットフォームバージョンを選択するには、以下を指定します。

      Python 3.6 running on 64bit Amazon Linux

    • プラットフォーム名を指定します。Elastic Beanstalk はプラットフォームの最新の言語ランタイムの最新バージョンを選択します。例:

      Python

    使用可能なすべてのプラットフォームとそのバージョンの説明については、「AWS Elastic Beanstalk でサポートされているプラットフォーム」を参照してください。

    AWS Command Line Interface (AWS CLI) を使用すると、使用可能なプラットフォームのバージョンのリストとそれぞれの ARN を取得できます。list-platform-versions コマンドは、すべての使用可能なプラットフォームのバージョンに関する詳細情報を一覧表示します。--filters 引数でリストの範囲を制限することができます。たとえば、特定の言語のすべてのプラットフォームのバージョンを一覧表示できます。

    次の例では、すべての Python プラットフォームバージョンのクエリを実行し、一連のコマンドを通じて出力をパイプします。結果は、プラットフォームのバージョン ARN のリスト (末尾に /version がない) となります。人間が読み取れる形式で、URL エンコードはありません。

    $ aws elasticbeanstalk list-platform-versions --filters 'Type="PlatformName",Operator="contains",Values="Python"' | grep PlatformArn | awk -F '"' '{print $4}' | awk -F '/' '{print $2}' Preconfigured Docker - Python 3.4 running on 64bit Debian Preconfigured Docker - Python 3.4 running on 64bit Debian Python 2.6 running on 32bit Amazon Linux Python 2.6 running on 32bit Amazon Linux 2014.03 ... Python 3.6 running on 64bit Amazon Linux

    次の例では、最後の例に Perl コマンドを追加し、URL エンコードを出力します。

    $ aws elasticbeanstalk list-platform-versions --filters 'Type="PlatformName",Operator="contains",Values="Python"' | grep PlatformArn | awk -F '"' '{print $4}' | awk -F '/' '{print $2}' | perl -MURI::Escape -ne 'chomp;print uri_escape($_),"\n"' Preconfigured%20Docker%20-%20Python%203.4%20running%20on%2064bit%20Debian Preconfigured%20Docker%20-%20Python%203.4%20running%20on%2064bit%20Debian Python%202.6%20running%20on%2032bit%20Amazon%20Linux Python%202.6%20running%20on%2032bit%20Amazon%20Linux%202014.03 ... Python%203.6%20running%20on%2064bit%20Amazon%20Linux

「Launch Now URL」は、オプションで次のパラメータを含めることができます。オプションのパラメータを「Launch Now URL」に含めない場合、Elastic Beanstalk はデフォルトの値を使用してアプリケーションを作成し、実行します。[sourceBundleUrl] パラメータが 含まれていない場合、Elastic Beanstalk はデフォルトのサンプルアプリケーションを指定した [プラットフォーム] に使用します。

  • [sourceBundleUrl] – URL 形式でウェブアプリケーションソースバンドルの場所を指定します。たとえば、Amazon S3 バケットにソースバンドルをアップロードした場合、sourceBundleUrl パラメータの値を https://s3.amazonaws.com/mybucket/myobject と指定します。

    注記

    [sourceBundleUrl] パラメータの値を HTTP URL として指定できますが、ユーザーのウェブブラウザは、必要に応じて HTML URL エンコードのポリシーを使用して文字を変換します。

  • [environmentType] – 環境が負荷分散型オートスケーリングであるか、または単一のインスタンスであるかを指定します。詳細については、「環境タイプ」を参照してください。パラメータ値として LoadBalancing または SingleInstance を指定できます。

  • [tierName] – ウェブリクエストを処理するウェブアプリケーションまたはバックグラウンドジョブを実行するウェブアプリケーションを、環境でサポートしているかどうかを指定します。詳細については、「AWS Elastic Beanstalk ワーカー環境」を参照してください。WebServer または Worker のどちらかを指定できます。

  • [instanceType] – アプリケーションに最適な特性 (メモリサイズや CPU 能力など) のあるサーバーを選択します。Elastic Beanstalk リージョンで使用できるインスタンスタイプについては、『設定オプション』の「インスタンスタイプ」を参照してください。各 Amazon EC2 インスタンスタイプの仕様の詳細については、「インスタンスタイプ」を参照してください。

  • [withVpc] – Amazon VPC で環境を作成するかどうかを指定します。true または false のどちらかを指定できます。Amazon VPC で Elastic Beanstalk を使用する方法については、「Elastic Beanstalk を Amazon Virtual Private Cloud に使用する」を参照してください。

  • withRds – この環境で Amazon RDS データベースインスタンスを作成するかどうかを指定します。詳細については、「Elastic Beanstalk を Amazon Relational Database Service に使用する」を参照してください。true または false のどちらかを指定できます。

  • rdsDBEngine – この環境の Amazon EC2 インスタンスで使用するデータベースエンジンを指定します。mysqloracle-selsqlserver-exsqlserver-web、または sqlserver-se を指定できます。デフォルト値は mysql です。

  • [rdsDBAllocatedStorage] – 割り当て済みデータベースストレージのサイズを指定します (GB 単位)。次の値を指定できます。

    • [MySQL] – 51024。デフォルト: 5

    • [Oracle] – 101024。デフォルト: 10

    • [Microsoft SQL Server Express Edition] – 30

    • [Microsoft SQL Server Web Edition] – 30

    • [Microsoft SQL Server Standard Edition] – 200

  • [rdsDBInstanceClass] – データベースインスタンスのタイプを指定します。デフォルト値は db.t2.micro (Amazon VPC で実行されていない環境では db.m1.large) です。Amazon RDS でサポートされているデータベースインスタンスクラスのリストについては、Amazon Relational Database Service ユーザーガイドの「DB インスタンスクラス」を参照してください。

  • [rdsMultiAZDatabase] – Elastic Beanstalk で複数のアベイラビリティーゾーンを対象としたデータベースインスタンスを作成する必要があるかどうかを指定します。true または false のどちらかを指定できます。Amazon RDS を使用した複数のアベイラビリティーゾーンにおけるデプロイの詳細については、Amazon Relational Database Service ユーザーガイドの「リージョンとアベイラビリティーゾーン」を参照してください。

  • [rdsDBDeletionPolicy] – 環境の終了時に、データベースインスタンスを削除するか、そのスナップショットを取得するかを指定します。Delete または Snapshot のどちらかを指定できます。

「Launch Now URL」の例を次に示します。アプリケーションを構築した後、ユーザーがそれを使用することができます。たとえば、URL をウェブページまたはトレーニング教材に組み込みたい場合があります。ユーザーが「Launch Now URL」を使用してアプリケーションを作成する場合、Elastic Beanstalk アプリケーションの作成ウィザードでは追加の入力を必要としません。

https://console.aws.amazon.com/elasticbeanstalk/?region=us-west-2#/newApplication?applicationName=YourCompanySampleApp&platform=PHP%207.1%20running%20on%2064bit%20Amazon%20Linux&sourceBundleUrl=http://s3.amazonaws.com/mybucket/myobject&environmentType=SingleInstance&tierName=WebServer&instanceType=m1.small&withVpc=true&withRds=true&rdsDBEngine=postgres&rdsDBAllocatedStorage=6&rdsDBInstanceClass=db.m1.small&rdsMultiAZDatabase=true&rdsDBDeletionPolicy=Snapshot

ユーザーが [Launch Now URL] を選択すると、Elastic Beanstalk は次のようなページを表示します。


        Elastic Beanstalk マネジメントコンソールページの「Launch Now URL」

Launch Now URL を使用するには

  1. [Launch Now URL] を選択します

  2. Elastic Beanstalk コンソール が開いたら [ウェブアプリケーションの作成] ページで [確認と起動] を選択して、アプリケーションを作成し、アプリケーションを実行する環境を起動するために Elastic Beanstalk が使用する設定を表示します。

  3. [設定] ページで、[アプリの作成] を選択してアプリケーションを作成します。

このページの内容: