dayjournal memo

Total 992 articles!!

Try #083 – AWS Amplifyで独自ドメインホスティング環境を構築してみた

Yasunori Kirimoto's avatar

img




AWS Amplifyで独自ドメインホスティング環境を構築してみました!



以前の記事「Try #081 – Amazon Route 53とAWS WAFとAmazon CloudFrontとAmazon S3で独自ドメインホスティング環境を構築してみた」の内容をAWS Amplifyで実現する方法をためしてみました。


今回は3パターンの独自ドメインホスティング環境を構築します。

構築の流れ

  1. AWSコンソールから構築する独自ドメインホスティング環境
    • Amplify ConsoleでGitHubを利用した公開
    • Amplify Consoleで独自ドメイン設定
  2. Amplify CLIから構築する独自ドメインホスティング環境
    • Amplify ConsoleでGitHubを利用した公開(Amplify CLI)
    • Amplify Consoleで独自ドメイン設定
  3. Amplify CLIから構築する独自ドメインカスタムホスティング環境
    • カスタム公開(Amplify CLI)


AWSコンソールから構築する独自ドメインホスティング環境

はじめに、AWSコンソールからAmplify Consoleを利用し独自ドメインホスティング環境を構築します。

今回のホスティング環境では、GitHubと連携した自動ビルド&デプロイがされる仕組みになっています。また、コンソール上には表示されませんが、内部的にはAmazon S3とAmazon CloudFrontを利用してデプロイをしているようです。また、AWS WAFについては追加で設定できないようです。


Amplify ConsoleでGitHubを利用した公開

Amplify ConsoleでGitHubを利用した公開をする方法です。


事前準備

  • GitHubでリポジトリ作成とコード反映まで
  • 今回はサンプルとしてVue.jsのプロジェクトを追加

img


AWSコンソール → AWS Amplifyをクリック。

img


Amplify Hostingの「使用を開始する」をクリック。

img


「GitHub」をクリック。

img


GitHubの認証画面が表示されるので「Authorize」をクリック。

img


事前準備していた対象リポジトリとブランチを選択 → 「次へ」をクリック。

img


任意のアプリケーション名設定 → 「次へ」をクリック。

img


「保存してデプロイ」をクリック。

img


自動デプロイが終わるとAWSコンソールでURLが発行されるのでアクセスします。

img


デプロイしたWebSiteが表示されます。



Amplify Consoleで独自ドメイン設定

Amplify Consoleで独自ドメイン設定をする方法です。


事前準備

img


「ドメイン管理」をクリック。

img


「ドメインを追加」をクリック。

img


対象ドメインを選択 → 「ドメインを設定」をクリック。

img


対象ドメインとブランチを確認 → 「保存」をクリック。

img


設定完了後に独自ドメインにアクセスします。

img


独自ドメインでWebSiteが表示されます。

img



Amplify CLIから構築する独自ドメインホスティング環境

次に、Amplify CLIからAmplify Consoleを利用し独自ドメインホスティングを構築します。

「Amplify ConsoleでGitHubを利用した公開」と同一構成のホスティング環境になります。


Amplify ConsoleでGitHubを利用した公開(Amplify CLI)

Amplify CLIによるAmplify ConsoleでGitHubを利用した公開をする方法です。


事前準備


実行環境

  • node v16.10.0
  • npm v7.24.0

ホスティング環境を設定します。実行時に「Hosting with Amplify Console」と「Continuous deployment (Git-based deployments)」を選択します。

amplify add hosting

画像


AWSコンソールが自動で表示されるので「GitHub」をクリック。

画像


GitHubの認証画面が表示されるので「Authorize」をクリック。

img


事前準備していた対象リポジトリとブランチを選択 → 「次へ」をクリック。

画像


対象アプリケーションと環境を選択。既存のロールが無い場合は「新しいロールを作成」をクリック。

画像


エンティティタイプは「AWSのサービス」を選択。ユースケースは「Amplify」を選択 → 「次へ」をクリック。

画像


「次へ」をクリック。

画像


任意のロール名を設定 → 「ロールを作成」をクリック。

画像


作成したロールを選択 → 「次へ」をクリック。

画像


「保存してデプロイ」をクリック。

画像


AWSコンソールの設定完了後、コマンドに戻りEnterを実行。

画像


自動デプロイが終わるとAWSコンソールでURLが発行されるのでアクセスします。

画像


デプロイしたWebSiteが表示されます。



Amplify Consoleで独自ドメイン設定

Amplify Consoleで独自ドメイン設定をする方法です。


事前準備

img


「ドメイン管理」をクリック。

img


「ドメインを追加」をクリック。

img


対象ドメインを選択 → 「ドメインを設定」をクリック。

img


対象ドメインとブランチを確認 → 「保存」をクリック。

img


設定完了後に独自ドメインにアクセスします。

img


独自ドメインでWebSiteが表示されます。



Amplify CLIから構築する独自ドメインカスタムホスティング環境

最後に、Amplify CLIから直接Amazon CloudFrontとAmazon S3を利用し独自ドメインホスティング環境を構築します。


カスタム公開(Amplify CLI)

Amplify CLIによるカスタム公開をする方法です。


事前準備


実行環境

  • node v16.10.0
  • npm v7.24.0

ホスティング環境を設定します。実行時に「Amazon CloudFront and S3」を選択します。

amplify add hosting

画像

画像


設定確認をします。

amplify status

画像


アプリケーションを自動でビルドしクラウドにデプロイします。

amplify publish

画像


AWS Amplify Consoleにはデプロイされていないのを確認します。

画像


Amazon S3に自動でデプロイされているのを確認します。

画像


Amazon CloudFrontに自動でデプロイされているのを確認します。作成されたURLにアクセスします。

画像


デプロイしたURLにアクセスしても、リージョンによってはすぐには表示できません。「Amplify Docs - Hosting」によると24時間後までには表示されるらしいです。すぐに表示したいかたは下記設定で表示可能です。

画像


オリジン → 対象のオリジン選択 → 「編集」をクリック。

画像


同一のオリジンドメインを再選択(ドメインにリージョンが追加される) → 「変更を保存」をクリック。

画像


デプロイしたWebSiteが表示されます。


カスタム公開で、独自ドメイン設定やAWS WAFを利用したい場合は下記記事を参考に追加で設定。または、プロジェクト内のAWS CloudFormationの設定ファイルを編集。
Try #081 – Amazon Route 53とAWS WAFとAmazon CloudFrontとAmazon S3で独自ドメインホスティング環境を構築してみた



AWS Amplifyを利用することで、独自ドメインホスティング環境のさまざまな構築やGitHubと連携した自動ビルド&デプロイが可能です。

今後は、AWS CloudFormationやAWS CDK等で、各サービス構成をどの範囲まで定義できるかも試していければと思います。



AWS Amplifyについて、他にも記事を書いています。よろしければぜひ。
tags - AWS Amplify



book

Q&A