跳到主要内容

Dockerfile Linter

根据18条Hadolint风格的最佳实践规则(未标记的基础镜像、以root身份运行、ENV中的秘密信息、层膨胀等)检查您的Dockerfile,并自动格式化 — 合并RUN层并排序软件包列表。完全在您的浏览器中运行。

输入

输出

摘要

结果
严重程度数量
No data yet

问题

结果
行号严重程度规则消息说明
No data yet

格式化的Dockerfile

格式化的Dockerfile
 
这对您有帮助吗?

使用此工具的更多方式

REST API

curl -X POST https://api.iotools.cloud/v1/tool/dockerfile-linter \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "dockerfile": "FROM ubuntu:latest\n\nMAINTAINER john@example.com\n…"
  }'

替换成您账户中的密钥。工具的字段即为请求体——没有额外包装。

让 AI 代理执行

Use the IOTools `dockerfile-linter` tool (Dockerfile Linter) on this input:

YOUR_INPUT_HERE

将此粘贴给任何已连接 IOTools MCP 服务器的代理,再加上您的输入内容。

嵌入式小组件

<iframe
  src="https://iotools.cloud/embed/dockerfile-linter/"
  width="100%" height="520" frameborder="0" scrolling="no" loading="lazy"
  title="Dockerfile Linter — iotools.cloud"
  sandbox="allow-scripts allow-forms allow-same-origin allow-downloads allow-popups allow-popups-to-escape-sandbox"
  allow="clipboard-write"
  style="width:100%;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden"></iframe>
<script src="https://iotools.cloud/embed.js" async></script>

把它放到您自己的页面上——免费,无需密钥,只需保留一个反向链接。

每次 API/MCP 调用费用5 积分起
需要更多积分?查看定价

也可通过

使用指南

Dockerfile Linter根据18条Hadolint风格的最佳实践规则检查您的Dockerfile,并同时将其重新格式化为更清洁、更可复现的形式。粘贴您的Dockerfile,您会立即获得严重程度摘要、逐行问题列表和自动格式化版本 — 所有计算都在浏览器中进行。

检查内容

Linter会标记最常导致镜像膨胀、破坏可复现性或削弱安全性的错误:

  • 基础镜像 — 未标记的镜像(DL3006)和:latest标签(DL3007),它们使构建不可复现。
  • 安全性 — 没有USER指令,因此容器以root身份运行(DL3002)、ENV中可能硬编码的秘密信息(DL3060)、RUN中的sudo(DL3004)。
  • 镜像大小 & 层 — 应该合并的连续RUN指令(DL3059)、残留的apt-get列表(DL3009)、缺少--no-install-recommends(DL3015)。
  • 正确性 & 风格 — 未知指令(DL3000)、首个指令不是FROM(DL3001)、RUN内的cd而不是WORKDIR(DL3003)、无效的EXPOSE端口(DL3011)、未锁定的pip包(DL3013)、应使用COPY的ADD(DL3020)、shell形式的CMD/ENTRYPOINT(DL3025)、缺少HEALTHCHECK(DL3048)、已弃用的MAINTAINER指令(DL4000)。

每个问题都显示行号、严重程度(错误、警告或信息)、与Hadolint兼容的规则代码、简短消息和修复方法说明。

使用方法

  1. 将您的Dockerfile粘贴到输入框,或点击Try an example加载一个故意混乱的示例。
  2. 阅读Summary表以快速查看错误/警告/信息数。
  3. 检查Issues表 — 规则代码与Hadolint匹配,因此您可以查找任何不认识的规则。
  4. 复制Formatted Dockerfile,它将连续的RUN层与&& \合并,并按字母顺序排序apt-get、pip和apk包列表。

这与Hadolint相同吗?

使用相同的规则代码(DLxxxx)并涵盖Hadolint最有影响的检查子集,但这是独立实现 — 不是Hadolint二进制文件的包装器 — 因此会检测到比完整工具更少的边界情况。无需安装任何东西就能进行快速审查是理想的。

它会修改我的Dockerfile吗?

不会。格式化的输出是您可以复制或下载的建议;您的输入永远不会自动更改。格式化程序很保守 — 它重新排列指令,但不添加或删除功能。

为什么要排序包列表?

按字母顺序排序的apt-get install/pip install/apk add列表更容易扫描、在diff中审查和去重 — 这是常见的Dockerfile卫生惯例。

隐私

此工具完全在您的浏览器中运行。您的Dockerfile永远不会被上传、记录或发送到任何服务器 — 所有lint和格式化都在本地设备上进行。

dockerdockerfilelinterhadolintdevopsbest-practicesformatter

喜欢这些工具?去掉广告吧。

一次性付款即可永久移除您账户中的所有广告。无需订阅,不追踪。