Repolode
deckrun

deckrun/dockadvisor

用 Go 编写的轻量 Dockerfile 检查工具,通过 60 多条规则发现常见问题与安全隐患,并给出 0-100 分的质量评分。

可替代:Hadolint

Star
225
Fork
7
未关闭 Issue
0
最近提交
9个月前

这是什么?

Dockadvisor 是一个用 Go 编写的 Dockerfile 检查工具,可以解析 Dockerfile 并输出违规项,包括行号、严重级别以及 Docker 官方文档链接。它帮助开发者在进入 CI 之前发现语法错误、构建失败和不符合最佳实践的写法。

工具覆盖所有标准 Dockerfile 指令,包括多阶段构建,并能检查通过 ARG 或 ENV 传入的敏感信息、ARG 作用域以及未定义变量的引用。每次检查会给出质量分数,出现错误或警告时分数相应下降,便于长期跟踪 Dockerfile 的质量变化。

除命令行工具外,它还提供可在 Go 项目中调用的 parse 包,可编译为 WebAssembly 在浏览器中运行,也可以通过 Docker Compose 启动网页界面。

核心功能

  • 01覆盖所有标准 Dockerfile 指令及多阶段构建,共 60 多条规则。
  • 02输出问题的行号、严重级别和文档链接。
  • 03根据错误与警告数量给出 0-100 的质量评分。
  • 04检测 ARG 和 ENV 中可能泄露的敏感信息。
  • 05可作为 Go 库、命令行工具、WebAssembly 模块或网页应用使用。

适用场景

  • 在 CI 流水线中于构建镜像前检查 Dockerfile。
  • 在代码评审中通过统一评分衡量 Dockerfile 质量。
  • 将 Dockerfile 校验集成到 Go 工具或 Web 服务中。
  • 学习 Dockerfile 最佳实践,即时获取反馈。

标签

常见问题

dockadvisor 是什么?
用 Go 编写的轻量 Dockerfile 检查工具,通过 60 多条规则发现常见问题与安全隐患,并给出 0-100 分的质量评分。 Dockadvisor 是一个用 Go 编写的 Dockerfile 检查工具,可以解析 Dockerfile 并输出违规项,包括行号、严重级别以及 Docker 官方文档链接。它帮助开发者在进入 CI 之前发现语法错误、构建失败和不符合最佳实践的写法。
dockadvisor 可以免费使用吗?用的什么许可证?
dockadvisor 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
dockadvisor 还在维护吗?
超过半年未提交。dockadvisor 最近一次提交是在 2026年1月12日。
dockadvisor 适合用来做什么?
在 CI 流水线中于构建镜像前检查 Dockerfile。 在代码评审中通过统一评分衡量 Dockerfile 质量。 将 Dockerfile 校验集成到 Go 工具或 Web 服务中。 学习 Dockerfile 最佳实践,即时获取反馈。
在哪里获取 dockadvisor?
源代码和安装说明在 GitHub 上:https://github.com/deckrun/dockadvisor

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目