このワークショップでは、ユーザーが Wild Rydes のフリートからユニコーンライドをリクエストできるようにする簡単なWebアプリケーションをデプロイします。 アプリケーションは、ピックアップしたい場所を示すためのHTMLベースのユーザーインターフェースをユーザーに提示し、リクエストを送信して近くのユニコーンを手配するためのRESTful Webサービスとバックエンドでインターフェースします。 アプリケーションはまた、ユーザーがサービスに登録してライドをリクエストする前にログインするための機能を提供します。
In this workshop you'll deploy a simple web application that enables users to request unicorn rides from the Wild Rydes fleet. The application will present users with an HTML based user interface for indicating the location where they would like to be picked up and will interface on the backend with a RESTful web service to submit the request and dispatch a nearby unicorn. The application will also provide facilities for users to register with the service and log in before requesting rides.
アプリケーションアーキテクチャは、AWS Lambda、Amazon API Gateway、Amazon S3、Amazon DynamoDB、およびAmazon Cognito を使用します。 S3 は、HTML、CSS、JavaScript、およびユーザーのブラウザに読み込まれる画像ファイルなどの静的Webリソースをホストします。 ブラウザで実行されるJavaScriptは、Lambda と API Gateway を使用して構築されたパブリックバックエンドAPIとデータを送受信します。 Amazon Cognito は、バックエンドAPIを保護するためのユーザー管理および認証機能を提供します。 最後に、DynamoDB は、APIの Lambda 関数によってデータを格納できる永続層を提供します。
The application architecture uses AWS Lambda, Amazon API Gateway, Amazon S3, Amazon DynamoDB, and Amazon Cognito. S3 hosts static web resources including HTML, CSS, JavaScript, and image files which are loaded in the user's browser. JavaScript executed in the browser sends and receives data from a public backend API built using Lambda and API Gateway. Amazon Cognito provides user management and authentication functions to secure the backend API. Finally, DynamoDB provides a persistence layer where data can be stored by the API's Lambda function.
完全なアーキテクチャーの描写については、下の図を参照してください。
See the diagram below for a depiction of the complete architecture.
あなたが飛び込んで始めたいのであれば、ワークショップを始めるために Static Web hosting モジュールのページを訪問してください。
If you'd like to jump in and get started please visit the Static Web hosting module page to begin the workshop.
このワークショップを完了するには、AWS IAM、S3、DynamoDB、Lambda、API Gateway、および Cognito リソースを作成するためのアクセス権を持つAWSアカウントが必要です。 このワークショップのコードと手順では、一度に1人の学習者のみが特定のAWSアカウントを使用していると想定しています。 他の学習者とアカウントを共有しようとすると、特定のリソースで名前の競合が発生します。 競合のために作成に失敗したリソースに固有のサフィックスを追加することでこれらを回避することができますが、説明にはこの作業を行うために必要な変更の詳細が記載されていません。
社内ワークショップメモ: 他の学習者とアカウントを共有する前提で日本語訳ドキュメントを書いています。
In order to complete this workshop you'll need an AWS Account with access to create AWS IAM, S3, DynamoDB, Lambda, API Gateway and Cognito resources. The code and instructions in this workshop assume only one student is using a given AWS account at a time. If you try sharing an account with another student, you'll run into naming conflicts for certain resources. You can work around these by appending a unique suffix to the resources that fail to create due to conflicts, but the instructions do not provide details on the changes required to make this work.
このワークショップの一環としてあなたが立ち上げるすべてのリソースは、あなたのアカウントが12ヶ月未満であればAWSの無料利用枠の対象となります。 詳細については AWS Free Tier page をご覧ください。
All of the resources you will launch as part of this workshop are eligible for the AWS free tier if your account is less than 12 months old. See the AWS Free Tier page for more details.
このワークショップを完了するには、最新バージョンのChromeを使用することをお勧めします。
We recommend you use the latest version of Chrome to complete this workshop.
設定ファイルを少し更新するには、ローカルのテキストエディタが必要です。
社内ワークショップメモ: AWS Cloud9 を使うのでローカル環境には何もインストールする必要はありません。
You will need a local text editor for making minor updates to configuration files.
このワークショップは複数のモジュールに分割されています。 次に進む前に各モジュールを完成させる必要があります。ただし、モジュール1と2には AWS CloudFormation テンプレートが用意されており、必要に応じて手動で作成しなくても必要なリソースを起動できます。
社内ワークショップメモ: 共有アカウントでは CloudFormation は使用できません。
This workshop is broken up into multiple modules. You must complete each module before proceeding to the next, however, modules 1 and 2 have AWS CloudFormation templates available that you can use to launch the necessary resources without manually creating them yourself if you'd like to skip ahead.
ワークショップを終了したら、クリーンアップガイドに従って作成されたすべてのリソースを削除できます。
社内ワークショップメモ: 共有アカウントは一定期間後にアカウントにあるすべてのリソースが強制削除されます。
After you have completed the workshop you can delete all of the resources that were created by following the cleanup guide.