AWS Amplify Hosting
Git リポジトリと連携してフロントエンドアプリケーションの CI/CD とグローバル CDN 配信を自動化するフルマネージドホスティングサービス
概要
AWS Amplify Hosting は、React、Next.js、Vue、Angular、Nuxt などのフロントエンドフレームワークで構築されたアプリケーションを、Git プッシュをトリガーとして自動ビルド・デプロイし、CloudFront ベースのグローバル CDN で配信するフルマネージドサービスです。SSR (Server-Side Rendering)、SSG (Static Site Generation)、ISR (Incremental Static Regeneration) に対応し、プレビュー環境の自動生成やブランチごとの独立デプロイメントも標準で備えています。
Git ベースの CI/CD とビルド設定
Amplify Hosting は GitHub、GitLab、Bitbucket、AWS CodeCommit のリポジトリと接続し、指定ブランチへのプッシュを検知して自動的にビルド・デプロイを実行します。ビルド設定は amplify.yml ファイルで定義し、preBuild (依存関係のインストール)、build (ビルドコマンド)、postBuild (後処理) の各フェーズを記述します。フレームワークの自動検出機能により、Next.js や Nuxt のプロジェクトは設定なしで適切なビルドコマンドが推定されます。環境変数はブランチごとに設定でき、開発ブランチと本番ブランチで異なる API エンドポイントやフィーチャーフラグを使い分けられます。モノレポ構成にも対応しており、特定のディレクトリ配下の変更のみをトリガーとしたビルドを設定できます。ビルドイメージのカスタマイズにより、特定のバージョンの Node.js やシステムライブラリを必要とするプロジェクトにも対応します。
SSR・ISR 対応とエッジ実行
Next.js の SSR (Server-Side Rendering) アプリケーションをデプロイすると、Amplify は自動的にサーバーサイドの実行環境を構築し、リクエスト時にページを動的にレンダリングします。ISR (Incremental Static Regeneration) にも対応しており、静的生成されたページをバックグラウンドで再生成する仕組みが透過的に動作します。API Routes や Middleware も Amplify の実行環境で動作するため、Next.js のフル機能を活用したアプリケーションをそのままデプロイできます。Image Optimization (next/image) もサーバーサイドで実行され、デバイスに応じた最適なサイズ・フォーマットの画像を自動配信します。カスタムヘッダーやリダイレクトルールは amplify.yml または Amplify コンソールから設定でき、SEO 対策やセキュリティヘッダーの追加が容易です。
プレビュー環境とチーム開発ワークフロー
プルリクエストプレビュー機能を有効にすると、PR が作成されるたびに独立したプレビュー環境が自動的にデプロイされ、一意の URL が発行されます。レビュアーはプレビュー URL で実際の動作を確認でき、PR のマージ後にプレビュー環境は自動的に削除されます。GitHub の Checks API と統合されているため、ビルドの成否が PR のステータスチェックとして表示されます。ブランチごとのサブドメイン (develop.example.com、staging.example.com) を自動設定する機能により、環境ごとの URL 管理が簡素化されます。Basic 認証によるアクセス制限をブランチ単位で設定でき、ステージング環境を社内メンバーのみに公開する運用が容易です。カスタムドメインの設定では、Route 53 との統合により SSL 証明書の発行と DNS レコードの設定が自動化されます。