Terraformのinternet-gatewayのモジュールファイル

2023/10/26に公開

internet-gatewayのモジュールファイル

internet-gateway.tfファイル
# インターネットゲートウェイを作成
resource "aws_internet_gateway" "this" {
  vpc_id = var.vpc_id  # アタッチするVPCのID

  tags = {
    Name = var.name  # インターネットゲートウェイの名前
  }
}

variables.tfファイル
# インターネットゲートウェイが作成されるVPCのID
variable "vpc_id" {
  description = "The ID of the VPC where the Internet Gateway will be created."
  type        = string
}

# インターネットゲートウェイの名前タグ
variable "name" {
  description = "The name tag for the Internet Gateway."
  type        = string
  default     = "sample-dev-igw"  # デフォルト名
}



output.tfファイル
# インターネットゲートウェイIDを出力
output "internet_gateway_id" {
  value = aws_internet_gateway.this.id  # 作成したインターネットゲートウェイのID
}

providers.tfファイル
 # プロバイダとそのバージョンを定義
terraform {
  required_providers {
    aws = {
      source  = "hashicorp/aws"  # AWSプロバイダのソース
      version = "~> 5.0"  # バージョン指定
    }
  }
}

# AWSプロバイダの設定
provider aws {
  region = "ap-northeast-1"  # AWSリージョン
}


README.mdファイル

internet-gateway.tfファイル

項目 説明
resource "aws_internet_gateway" AWS Internet Gatewayを定義するTerraformリソースです。
vpc_id Internet Gatewayを作成するVPCのIDを指定します。このIDはvariables.tfで定義されています。
tags AWSリソースに付けるタグを定義します。この例ではNameタグが設定されています。

variables.tfファイル

項目 説明
variable "vpc_id" Internet Gatewayが作成されるVPCのIDを指定します。
variable "name" Internet Gatewayに設定する名前タグを指定します。この名前はオプションでデフォルト値"sample-dev-igw"があります。

output.tfファイル

項目 説明
output "internet_gateway_id" 生成されたInternet GatewayのIDを出力します。このIDは他のTerraformコードやモジュールで使用できます。

Discussion