TerraformでS3バケットをデプロイする
バケットデプロイ
新規ディレクトリでmain.tf作成します。
main.tf
terraform {
required_providers {
aws = {
source = "hashicorp/aws"
version = "~> 4.16"
}
}
required_version = ">= 1.2.0"
}
provider "aws" {
region = "ap-northeast-1"
}
resource "aws_s3_bucket" "lambda_bucket" {
bucket = "xxxxxxxxxx"
}
バケット名はユニークでないとデプロイ失敗します。
$ terraform init $ terraform apply
バケットが作成されます。
terraform destroyしておきます。
Random Providerでランダムな名前のバケットデプロイ
Random Providerを使用してランダムなバケット名を生成してデプロイしてみます。
main.tf
terraform {
required_providers {
aws = {
source = "hashicorp/aws"
version = "~> 4.16"
}
random = {
source = "hashicorp/random"
version = ">= 3.1.0"
}
}
required_version = ">= 1.2.0"
}
provider "aws" {
region = "ap-northeast-1"
}
resource "random_pet" "lambda_bucket_name" {
prefix = "learn-terraform-functions"
length = 4
}
resource "aws_s3_bucket" "lambda_bucket" {
bucket = random_pet.lambda_bucket_name.id
}
適用します。
terraform apply
プレフィックスが「learn-terrafom-functions」、length=2、セパレータは「-」のpet名がついた名前のバケットが生成されます。
最後にterraform destroyしておきます。
Terraform Registry

KHI入社して退社。今はCONFRAGEで正社員です。関西で140-170/80~120万から受け付けております^^
得意技はJS(ES20xx),Java,AWSの大体のリソースです
コメントはやさしくお願いいたします^^
座右の銘は、「狭き門より入れ」「願わくは、我に七難八苦を与えたまえ」です^^




コメント