Cover Image for AWS AmplifyがNextjs12,13に対応したのでTerraformで書いてみる

AWS AmplifyがNextjs12,13に対応したのでTerraformで書いてみる

2022/12/14

概要

AWS Amplify が Nextjs12, 13 をサポートしたので、Terraform で書いてみました。Amplify はたくさんの機能群からなりますが、今回はホスティング機能にしぼって記事を書きます。

サンプルコード

サンプルコードはGitHubにアップしています。

背景

2021 年 10 月 Nextjs12 のリリースから、AWS Amplify では正式対応がIssueとして立っていました。筆者も待望だったのですが、なかなかこれは対応されずついに 2022 年 10 月末 Nextjs13 の方が先にリリースされてしまいました。

今回は素早い対応で 2022 年 11 月 17 日、ついに AWS Amplify の Nextjs 12,13 対応が発表されました!

これに合わせて Amplify の Nextjs ホスティングを Terraform で書いてみました。1. SSR する場合、2. SG のみの場合に分けて解説します。

1. SSR する場合

SSR する Nextjs のコードがない場合は AWS 公式の解説aが良いです。

2. SG のみの場合

書き方

data "aws_ami" "ubuntu" {
  most_recent = true

  filter {
    name   = "name"
    values = ["ubuntu/images/hvm-ssd/ubuntu-focal-20.04-amd64-server-*"]
  }

  filter {
    name   = "virtualization-type"
    values = ["hvm"]
  }

  owners = ["099720109477"] # Canonical
}

resource "aws_instance" "web" {
  ami           = data.aws_ami.ubuntu.id
  instance_type = "t3.micro"

  tags = {
    Name = "HelloWorld"
  }
}

まとめ

最高ですね!

  1. いいですね!

  2. 悪くないですね!