記事一覧に戻る

API GatewayをRoute53の独自ドメインでデプロイした話

2023-08-203 min read技術記事
#AWS#route53#APIGateway#acm#GoogleDomains

API Gatewayを独自ドメインでデプロイした話

作成日時: August 18, 2023 3:41 PM

はじめに

こんにちは、エンジニアリング半年のKentoです。

AWS超ド級初心者の備忘録だと思って参考程度にしてください

やりたかったこと

API Gatewayで作ったHTTP APIを独自のドメインで公開したい。

→以前友達がAPIのURLを独自のドメインで共有してくれたことがあり、それが使いやすかったため。

Google domainで取得したドメインをAWSで使いたい。

事前にやっておいたこと

Google domainでのドメイン取得

API GatewayでのHTTP APIの準備

全体像

api_全体像.jpg

手法

1. Route 53 ダッシュボードでホストゾーンを作成

スクリーンショット 2023-08-20 20.26.20.png

スクリーンショット 2023-08-20 20.26.41.png

2. ホストゾーンの設定

ドメインを設定(サブドメインを入れたほうが使いやすい)

例:sub.sample.com

スクリーンショット 2023-08-20 20.26.55.png

3. Google domainの設定

詳細より、タイプ→NSのところ(値、トラフィックのルーティング先)

の四つ書いてあるルーティング先をコピー

スクリーンショット 2023-08-20 20.27.22.png

Google domainの設定→DNS

スクリーンショット 2023-08-20 20.27.49.png

カスタムネームサーバーを設定、ネームサーバーの管理からさっきコピーした四つのリンクをコピペ

スクリーンショット 2023-08-20 20.27.56.png

4. ACM(AWS Cretificate Manager)証明書の作成

Cretificate Managerを起動してリクエストをクリック

スクリーンショット 2023-08-20 20.58.14.png

スクリーンショット 2023-08-20 20.58.30.png

完全修飾ドメイン名に使用したいドメインを入れる

例:*.sub.sample.com(全て使用できるようにする)

DNS検証にチェックを入れておくとAWSが自動的に検証してくれる

少し時間かかる可能性あり、5~30分程度

スクリーンショット 2023-08-20 20.58.59.png

図は検証済みの状態

スクリーンショット 2023-08-20 21.08.44.png

5. API gatewayで証明書の設定、マッピング

API gatewayを開いてカスタムドメイン名を選択、作成をクリック

スクリーンショット 2023-08-20 21.11.50.png

ドメイン名はご自由に

例:api.sub.sample.com(先ほど証明書で許可したものを入力)

HTTP APIならリージョンを選択してACM証明書で先ほど作成したものを選択

スクリーンショット 2023-08-20 21.12.10.png

続いてAPIマッピングを設定

スクリーンショット 2023-08-20 21.12.50.png

作ったAPIを指定してステージとパスをお好みで設定

スクリーンショット 2023-08-20 21.13.10.png

6. 最後にRoute 53でAレコードを作成

作成したホストゾーンの詳細ページからレコードを作成をクリック

スクリーンショット 2023-08-20 21.30.23.png

レコード名はAPI Gatewayで設定したものを設定

レコードタイプはA

値にはAPI Gatewayのカスタムドメイン名の設定ページからAPI Gateway ドメイン名をコピペ

スクリーンショット 2023-08-20 21.32.08.png

先ほどのホストゾーンの設定の詳細にAタイプのレコードが表示されていれば設定完了となります!

お疲れ様でした。

Postmanなどでテストしてみてしっかりレスポンスが帰ってくるか確認してみましょう

スクリーンショット 2023-08-20 21.43.04.png

参考にしたサイト

https://dev.classmethod.jp/articles/tsnote-api-gateway-http-api-custom-domain/