Railway/Tutorials
Amazon CloudFrontを使用してCDNを追加する
Railway において、Fastify アプリに Amazon CloudFront を CDN として統合し、Railway 上の配信を最適化する方法をステップバイステップで解説します。
著者: AIイノベーションズ 阿部隼也(X / Twitter)Amazon CloudFrontを使用してCDNを追加する
このチュートリアルでは、Railway上でホストされているFastifyアプリケーションの前に、Amazon CloudFrontをコンテンツデリバリーネットワーク(CDN)として設定する方法を説明します。
CDNの目的は何ですか?
CDNは、世界中のユーザーにWebコンテンツをより速く配信するための分散サーバーネットワークです。ユーザーに最も近いエッジロケーションからコンテンツをキャッシュして提供することで、レイテンシを削減し、アプリケーションのパフォーマンスを向上させます。
このチュートリアルについて
このチュートリアルでは、以下の手順を実行します。
- Railwayに基本的なFastifyサーバーをデプロイします。
- AWSでCloudFrontディストリビューションを作成し、Railwayアプリをオリジンとして設定します。
- SSLを有効にしたカスタムドメインを接続します。
1. Fastifyサーバーの作成とデプロイ
まず、RailwayにデプロイするシンプルなFastifyサーバーが必要です。まだない場合は、FastifyのスターターテンプレートをRailwayからデプロイできます。
チェックポイント
FastifyアプリがRailwayにデプロイされ、*.up.railway.app
ドメインでアクセスできることを確認してください。
2. AWSでCloudFrontディストリビューションを作成する
- AWSマネジメントコンソールにサインインし、CloudFrontサービスに移動します。
- 「Create Distribution」をクリックします。
- Origin Domainには、Railwayアプリの
*.up.railway.app
ドメインを入力します。 - Viewer Protocol Policyで、「Redirect HTTP to HTTPS」を選択します。
- Allowed HTTP Methodsで、「GET, HEAD, OPTIONS, PUT, POST, PATCH, DELETE」を選択して、すべてのメソッドを許可します。
- その他の設定はデフォルトのままで、「Create Distribution」をクリックします。ディストリビューションのデプロイには数分かかります。
チェックポイント2
ディストリビューションがデプロイされたら、CloudFrontが提供するドメイン名(例: d123.cloudfront.net
)にアクセスして、Railwayアプリが表示されることを確認します。
3. SSLを有効にしたカスタムドメインを接続する
- CloudFrontディストリビューションの設定で、「Edit」をクリックします。
- **Alternate Domain Names (CNAMEs)**に、使用したいカスタムドメイン(例:
cdn.yourdomain.com
)を追加します。 - Custom SSL Certificateで、AWS Certificate Manager (ACM)で発行したSSL証明書を選択します。まだ証明書がない場合は、作成する必要があります。
- DNSプロバイダーで、カスタムドメインのCNAMEレコードを作成し、CloudFrontディストリビューションのドメイン名(例:
d123.cloudfront.net
)を指すように設定します。
結論
これで、Railwayアプリケーションの前にCloudFront CDNが正常に設定されました。CloudFrontは、静的および動的コンテンツをキャッシュし、世界中のユーザーに高速で配信します。
PR