本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com

AWS Terraform MCP Server 镜像提供基于AWS的Terraform最佳实践、基础设施即代码(IaC)模式及安全合规检查能力,集成Checkov工具实现自动化安全扫描。该镜像旨在简化AWS环境下的Terraform工作流管理,支持Terraform/Terragrunt命令执行、安全合规扫描、AWS Provider文档查询及Terraform模块搜索等核心功能,适用于IaC开发、部署与安全审计场景。
MCP Server定义:基于模型上下文协议(Model Context Protocol)的服务端组件,提供标准化工具接口以支持AI应用与基础设施工具链的集成。了解更多
| 属性 | 详情 |
|---|---|
| Docker镜像 | mcp/aws-terraform |
| 作者 | awslabs |
| 代码仓库 | [***] |
| Dockerfile | [***] |
| 镜像构建方 | Docker Inc. |
| Docker Scout健康评分 | !Docker Scout Health Score |
| 签名验证命令 | COSIGN_REPOSITORY=mcp/signatures cosign verify mcp/aws-terraform --key [***] |
| 许可证 | Apache License 2.0 |
镜像内置7个核心工具,覆盖Terraform工作流、安全扫描、文档查询及模块搜索场景:
| 工具名称 | 功能描述 |
|---|---|
ExecuteTerraformCommand | 针对AWS账户执行Terraform工作流命令(init/plan/apply等)。 |
ExecuteTerragruntCommand | 针对AWS账户执行Terragrunt工作流命令,支持多模块管理与远程状态。 |
RunCheckovScan | 对Terraform代码执行Checkov安全扫描,检测合规风险与配置缺陷。 |
SearchAwsProviderDocs | 搜索AWS Provider文档,获取资源/数据源的属性与使用说明。 |
SearchAwsccProviderDocs | 搜索AWSCC Provider文档,获取基于Cloud Control API的资源信息。 |
SearchSpecificAwsIaModules | 搜索特定AWS-IA Terraform模块(如Bedrock、SageMaker等)的详情。 |
SearchUserProvidedModule | 分析用户提供的Terraform Registry模块,获取输入输出参数与使用方法。 |
ExecuteTerraformCommand和ExecuteTerragruntCommand执行初始化、计划、部署等操作,管理AWS资源的基础设施即代码生命周期。RunCheckovScan对Terraform代码进行静态安全扫描,确保符合AWS安全最佳实践,规避配置风险。SearchAwsProviderDocs或SearchAwsccProviderDocs快速检索AWS资源属性与使用示例,提升开发效率。SearchSpecificAwsIaModules和SearchUserProvidedModule查找官方或第三方Terraform模块,评估其输入输出与适用场景。ExecuteTerraformCommand功能:针对AWS账户执行Terraform工作流命令(init、plan、validate、apply、destroy等)。
描述:在指定工作目录中运行Terraform命令,支持自定义变量与AWS区域配置,适用于单模块或独立Terraform项目的生命周期管理。
| 参数 | 类型 | 描述 |
|---|---|---|
command | string | 必选,待执行的Terraform命令(如init、plan、apply) |
working_directory | string | 必选,包含Terraform文件的工作目录路径 |
aws_region | string | 可选,AWS区域(如us-east-1),默认使用环境变量配置 |
strip_ansi | boolean | 可选,是否剥离输出中的ANSI颜色代码,默认false |
variables | string | 可选,传递给Terraform的变量(格式:key=value,key2=value2) |
返回值:包含命令输出与执行状态的TerraformExecutionResult对象。
ExecuteTerragruntCommand功能:针对AWS账户执行Terragrunt工作流命令,支持多模块管理与远程状态。
描述:扩展Terraform功能,支持远程状态管理、模块依赖解析及多模块批量操作(如run-all),适用于复杂项目的模块化IaC管理。
| 参数 | 类型 | 描述 |
|---|---|---|
command | string | 必选,待执行的Terragrunt命令(如init、plan、run-all apply) |
working_directory | string | 必选,包含Terragrunt文件的工作目录路径 |
aws_region | string | 可选,AWS区域,默认使用环境变量配置 |
exclude_dirs | string | 可选,多模块运行时排除的目录(格式:dir1,dir2) |
include_dirs | string | 可选,多模块运行时包含的目录(格式:dir1,dir2) |
run_all | boolean | 可选,是否对所有子目录模块执行命令,默认false |
strip_ansi | boolean | 可选,是否剥离ANSI颜色代码,默认false |
terragrunt_config | string | 可选,自定义Terragrunt配置文件路径(与run-all不兼容) |
variables | string | 可选,传递给Terraform的变量(格式:key=value) |
返回值:包含命令输出与执行状态的TerragruntExecutionResult对象。
RunCheckovScan功能:对Terraform代码执行Checkov安全扫描,检测合规风险。
描述:基于开源工具Checkov([***]
| 参数 | 类型 | 描述 |
|---|---|---|
working_directory | string | 必选,包含Terraform文件的扫描目录路径 |
check_ids | string | 可选,指定执行的检查ID(格式:CKV_AWS_1,CKV_AWS_2) |
framework | string | 可选,扫描框架(如terraform、cloudformation),默认terraform |
output_format | string | 可选,输出格式(json、cli、sarif等),默认json |
skip_check_ids | string | 可选,跳过的检查ID(格式:CKV_AWS_3,CKV_AWS_4) |
返回值:包含扫描结果与风险详情的CheckovScanResult对象。
SearchAwsProviderDocs功能:搜索AWS Provider文档,获取资源与数据源的详细说明。
描述:检索Terraform AWS Provider官方文档,支持资源(如aws_s3_bucket)和数据源(如aws_ami)的查询,返回描述、示例代码、参数说明及属性列表。支持自动处理前缀(如搜索s3_bucket等效于aws_s3_bucket)。
| 参数 | 类型 | 描述 |
|---|---|---|
asset_name | string | 必选,资源/数据源名称(如aws_s3_bucket或s3_bucket) |
asset_type | string | 可选,文档类型:resource(资源)、data_source(数据源)或both(两者),默认resource |
返回值:匹配的文档条目列表,包含资源描述、官方文档URL、示例代码、参数与属性说明。
SearchAwsccProviderDocs功能:搜索AWSCC Provider文档,获取基于Cloud Control API的资源信息。
描述:检索Terraform AWSCC Provider文档(基于AWS Cloud Control API),提供资源/数据源的标准化接口信息,支持自动处理前缀(如ec2_instance等效于awscc_ec2_instance)。
| 参数 | 类型 | 描述 |
|---|---|---|
asset_name | string | 必选,AWSCC资源/数据源名称(如awscc_s3_bucket或s3_bucket) |
asset_type | string | 可选,文档类型:resource、data_source或both,默认resource |
返回值:匹配的文档条目列表,包含资源描述、官方文档URL、示例代码及 schema 信息(必填/可选属性、嵌套结构等)。
SearchSpecificAwsIaModules功能:搜索特定AWS-IA Terraform模块的详细信息。
描述:查询4个预定义的AWS-IA模块(Bedrock、OpenSearch Serverless、SageMaker Endpoint、Serverless Streamlit App),返回模块文档、变量定义、子模块及版本信息,支持基于功能或配置的关键词搜索。
aws-ia/bedrock/aws:Amazon Bedrock生成式AI应用模块aws-ia/opensearch-serverless/aws:OpenSearch Serverless向量搜索模块aws-ia/sagemaker-endpoint/aws:SageMaker端点部署模块aws-ia/serverless-streamlit-app/aws:无服务器Streamlit应用部署模块| 参数 | 类型 | 描述 |
|---|---|---|
query | string | 可选,搜索关键词(如bedrock、vector search),空值返回所有模块 |
返回值:匹配模块列表,包含名称、版本、README内容、变量说明、子模块信息及发布详情。
SearchUserProvidedModule功能:分析用户提供的Terraform Registry模块,获取输入输出与使用方法。
描述:通过模块URL(格式:namespace/name/provider,如hashicorp/consul/aws)解析Terraform Registry模块,返回输入变量、输出变量、README文档及版本信息,支持指定模块版本与变量分析。
| 参数 | 类型 | 描述 |
|---|---|---|
module_url | string | 必选,模块URL或标识符(如hashicorp/consul/aws) |
variables | string | 可选,分析时使用的变量(格式:key=value) |
version | string | 可选,模块版本(如3.14.0),默认最新版 |
返回值:包含模块详情的SearchUserProvidedModuleResult对象,包含输入输出参数、文档内容及版本信息。
通过Docker命令直接运行镜像,执行工具命令(以下为基础示例,具体参数需根据工具需求调整):
docker run -i --rm \ -v $(pwd):/workdir \ # 挂载本地工作目录(含Terraform代码) -e AWS_REGION=us-east-1 \ # 配置AWS区域 -e AWS_ACCESS_KEY_ID=your-access-key \ # 配置AWS凭证(生产环境建议使用IAM角色) -e AWS_SECRET_ACCESS_KEY=your-secret-key \ mcp/aws-terraform \ ExecuteTerraformCommand \ --command "plan" \ --working_directory "/workdir" \ --variables "instance_type=t3.micro,environment=dev"
在支持Model Context Protocol的环境中,通过以下配置集成该镜像(JSON格式):
{ "mcpServers": { "aws-terraform": { "command": "docker", "args": [ "run", "-i", "--rm", "-v", "${workdir}:/workdir", # 动态挂载工作目录 "mcp/aws-terraform" ] } } }
# 在当前目录执行Terraform Plan,指定变量与区域 docker run -i --rm -v $(pwd):/tf mcp/aws-terraform ExecuteTerraformCommand \ --command "plan" \ --working_directory "/tf" \ --aws_region "us-west-2" \ --variables "vpc_id=vpc-12345,subnet_ids=subnet-67890"
# 扫描当前目录的Terraform代码,输出JSON格式结果 docker run -i --rm -v $(pwd):/tf mcp/aws-terraform RunCheckovScan \ --working_directory "/tf" \ --output_format "json" \ --skip_check_ids "CKV_AWS_21,CKV_AWS_53" # 跳过特定检查
# 搜索AWS S3 Bucket资源文档 docker run -i --rm mcp/aws-terraform SearchAwsProviderDocs \ --asset_name "aws_s3_bucket" \ --asset_type "resource"
本镜像基于Apache License 2.0许可协议开源,详见LICENSE。
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤
在 Linux 系统上配置轩辕镜像源,支持主流发行版
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
在 k8s 中配置 containerd 使用轩辕镜像加速
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
在 Synology 群晖NAS系统中配置轩辕镜像加速
在飞牛fnOS系统中配置轩辕镜像加速
在极空间NAS中配置轩辕镜像加速
在爱快ikuai系统中配置轩辕镜像加速
在绿联NAS系统中配置轩辕镜像加速
在威联通NAS系统中配置轩辕镜像加速
在 Podman 中配置轩辕镜像加速,支持多系统
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429