Terraform初始化失败求助:无法找到hashicorp/aws-internet提供商
解决Terraform初始化时"hashicorp/aws-internet提供商不存在"的问题
问题根源
你碰到的错误是因为Terraform注册表根本不存在hashicorp/aws-internet这个提供商,正确的AWS官方提供商是hashicorp/aws。大概率是你某个配置文件(比如vpc.tf或者infrastructure-prod.config)里写错了提供商名称。
修复步骤
修正提供商声明
打开vpc.tf,如果里面有类似这样的错误代码:provider "aws-internet" { # 配置内容 }直接改成正确的AWS提供商声明:
provider "aws" { profile = "default" # 和你AWS CLI的默认profile匹配 region = "你的目标区域" # 比如填us-east-1 }检查后端配置文件
打开infrastructure-prod.config,确认里面没有提到aws-internet。如果用S3存状态文件,正确的配置应该类似:bucket = "你的-terraform状态存储桶名" key = "prod/terraform.tfstate" region = "us-east-1" profile = "default"重新执行初始化
改完所有配置后,重新跑命令:terraform init -backend-config="infrastructure-prod.config"
额外验证点
- 执行
aws configure list确认AWS CLI的默认profile配置正常。 - 如果需要指定AWS提供商版本,在配置里加
required_providers块(适配Terraform 1.4.4):terraform { required_providers { aws = { source = "hashicorp/aws" version = "~> 4.0" } } }
内容的提问来源于stack exchange,提问作者tzhao5
相关产品推荐
相关产品推荐

