alpine/cfn-lintalpine/cfn-lint是一个基于Alpine Linux的轻量级Docker镜像,内置cfn-lint工具。cfn-lint是AWS CloudFormation模板的验证工具,可检查模板的语法正确性、最佳实践合规性及潜在问题,帮助用户在部署前发现并修复模板中的错误。
template.yaml或template.json)在终端中执行以下命令,验证当前目录下的CloudFormation模板:
bash# 进入存放CloudFormation模板的目录(例如模板文件名为template.yaml) cd /path/to/templates # 运行alpine/cfn-lint镜像验证模板 docker run -ti --rm -v $(pwd):/data -w /data alpine/cfn-lint template.yaml
-ti:分配交互式终端,支持实时输出--rm:容器退出后自动删除,避免残留容器文件-v $(pwd):/data:将当前主机目录挂载到容器内的/data目录,使容器可访问模板文件-w /data:将容器的工作目录设置为/data,与挂载目录对应alpine/cfn-lint:指定使用的Docker镜像template.yaml:待验证的CloudFormation模板文件名(可替换为实际模板路径)执行命令后,cfn-lint会输出模板的检查结果,包括错误(ERROR)、警告(WARNING)或信息(INFO)级别问题,例如:
E3002 Invalid Property Resources/MyBucket/Properties/InvalidProp W2001 Parameter 'Environment' has no default value and is not marked as required
如需使用自定义cfn-lint配置文件(如.cfnlintrc),可将配置文件放置在挂载目录中,容器会自动读取该配置:
bash# 假设当前目录包含.cfnlintrc和template.yaml docker run -ti --rm -v $(pwd):/data -w /data alpine/cfn-lint template.yaml

manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务