0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

SpringBootで開発したREST APIをLambda×API Gatewayの環境にデプロイし、Route53でカスタムドメイン化する②

Last updated at Posted at 2024-11-24

※前回記事の続きでございます。

やりたいこと

SpringBootで開発したREST APIアプリケーションをLambdaにデプロイし、API Gatewayで公開したい。
API GatewayのエンドポイントのURLをRoute53を使ってカスタムドメイン化したい。
RestAPI.jpg

②でやること

前回は、Lambda環境で動作するSpringBootアプリケーションの開発、Lambdaへのデプロイ、API Gatewayとの連携まで行いました。
今回は、API GatewayとRoute53を使った、APIのエンドポイントのカスタムドメイン化を行います。
(独自ドメインを保有していることを前提に進めさていただきます。)
前回記事はこちら↓↓↓

Route53の設定

AWSマネジメントコンソールでRoute53開き、ホストゾーンの作成をクリックします。
Route53ホーム画面.png

ドメイン名に自身のドメインを入力し、それ以外はデフォルトで作成しました。
ホストゾーン作成.png

次に、作成したドメインのNSレコードの値/トラフィックのルーティング先の情報を、ドメインを購入したネームサーバーに紐づけます。
スクリーンショット 2024-11-24 122441.png

ACMで証明書取得

API Gatewayで独自ドメインを使用する場合、証明書を使ってACMに証明書を登録する必要があるみたいなので、ACMで証明書の取得を行いたいと思います。
AWS Certificate Manager→証明書→証明書をリクエスト→パブリック証明書をリクエストを開きます。
完全修飾ドメイン名にご自身のドメインを入力し、それ以外はデフォルトでリクエストします。
証明書取得画面.png

リクエストが完了すると、ステータスが保留中の検証になります。
このままだと検証が終わらずタイムアウトになってしまうため、Route53でレコードを作成をクリックして、Route53のCNAMEレコードを作成します。
スクリーンショット 2024-11-24 123643.png

作成されると、Route53のホストゾーンにCNAMEレコードが追加されます。
スクリーンショット 2024-11-24 124114.png

API GatewayとRoute53の連携

次にAPI GatewayとRoute53を連携してAPIエンドポイントの独自ドメイン化を実現したいと思います。
API Gatewayからカスタムドメイン名を開きます。
APIgatewayカスタムドメイン.png
ドメイン名には自身のドメインを入力します。
APIGatewayドメイン名の追加①.png
ACM証明書には先ほど作成した証明書を選択し、ドメイン名を追加をクリックします。
スクリーンショット 2024-11-24 224920.png

次にAPIマッピングを設定します。
forAPIマッピング.png
API、ステージ共に対象のAPIを設定し、APIとドメインのマッピングを設定します。
APIマッピング.png
次にAPI GatewayへトラフィックするためのレコードをRoute53に作成します。
Route53から対象のホストゾーンを選択、レコードの作成をクリックします。
スクリーンショット 2024-11-24 225123.png
トラフィックのルーティング先にAPI Gatewayへのエイリアス、そして対象のAPIを選択します。
レコード作成.png
最後に、デフォルトのAPI Gatewayエンドポイントを非アクティブ化します。
(これをしないと、設定した独自ドメインをエンドポイントとして使うことができません。)
API Gateway→API→対象のAPIを選択→APIの設定→APIの設定を編集からデフォルトのエンドポイントを非アクティブにし、変更を保存します。
デフォルトのエンドポイント非アクティブ.png
以上の設定ののち、独自ドメインからAPIをコールし、問題なく動作すれば全量完了です。
お疲れさまでした!!

参考にさせていただいた記事

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?