目次

Dynamic Site Terraform

静的フロント + API Gateway + Lambda + DynamoDB の最小構成Terraformひな型。

構成

ユーザー
  ↓
CloudFront
  ├─ /        → S3
  └─ /api/*   → API Gateway
                 ↓
               Lambda
                 ↓
              DynamoDB

含まれるもの

  • S3 バケット
  • CloudFront Distribution
  • CloudFront OAC
  • API Gateway HTTP API
  • Lambda
  • DynamoDB(on-demand)
  • Lambda実行ロール
  • CloudWatch Logs

含めていないもの

  • 独自ドメイン
  • Route 53
  • Cognito
  • WAF
  • SESなどのメール送信

使い方

terraform init
terraform plan
terraform apply

フロント資産はS3バケットにアップロードし、APIは /api/* で呼び出す。

低コスト方針

  • DBは PAY_PER_REQUEST
  • APIは HTTP API
  • 実行基盤は Lambda
  • 常時起動サーバは置かない