Serverless Frameworkでは、CloudFormation的な記法でAWSリソースを起動できます。 S3 Bucket作った例をQiitaに書いてるので、興味がある人は試してみてください。
API GatewayからHTMLを返す方法を利用して、Reactなどを使って動的にwebサイトを配信することもできます。 Express.jsつかうより楽なケースもあるかと思いますので、試してみてください。
Circle CIやTravis CI / CodeDeployを使ってデプロイを自動化することもできます。
- CircleCIからServerless Frameworkのデプロイを実行する - Qiita
- API Gateway+Lambda+Serverless+TravisでAPI開発のCI/CDパイプラインを構築する - Qiita
- CodePipelineでServerless Frameworkのデプロイを管理する - Qiita
npm run build
した後にpublic/
ディレクトリ配下を公開サーバーにアップロードすればOKです。
ただしReact Routerの仕様上、全てのリクエストをindex.htmlにリダイレクトする必要があり、そのままS3にアップロードするだけでは死にます。
Netlify用のリダイレクトルールは設定されていますので、Netlifyの無料アカウントを利用されるのがよいかもしれません。 https://www.netlify.com/
X-rayも使えないことはないです。
日本人のコアコミッターがQiitaに記事めっちゃ書いてるんで、それみましょう。 @horike37