Dockerfile Linter
Проверьте ваш Dockerfile по 18 правилам best-practice в стиле Hadolint (незапинированные базовые образы, запуск от root, секреты в ENV, раздутие слоёв и другое) и автоформатируйте — объединяя слои RUN и сортируя списки пакетов. Выполняется полностью в вашем браузере.
Ввод
Вывод
Итоги
| Уровень серьёзности | Количество |
|---|---|
| No data yet | |
Проблемы
| Строка | Уровень серьёзности | Правило | Сообщение | Объяснение |
|---|---|---|---|---|
| No data yet | ||||
Отформатированный 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…"
}'Подставьте свой собственный ключ из аккаунта. Поля инструмента — это тело запроса, без обёртки.
Спросите у ИИ-агента
Use the IOTools `dockerfile-linter` tool (Dockerfile Linter) on this input:
YOUR_INPUT_HEREВставьте это любому агенту, подключённому к MCP-серверу IOTools, и добавьте свой ввод.
Виджет для встраивания
<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 проверяет ваш Dockerfile по 18 правилам best-practice в стиле Hadolint и одновременно переформатирует его в более чистую и воспроизводимую форму. Вставьте свой Dockerfile и сразу же получите сводку по уровню серьёзности, список проблем построчно и автоматически отформатированную версию — всё вычисляется в вашем браузере по мере ввода.
Что проверяется
Линтер отмечает ошибки, которые чаще всего раздувают образы, нарушают воспроизводимость или ослабляют безопасность:
- Базовые образы — не запинированные образы (
DL3006) и тег:latest(DL3007), которые делают builds невоспроизводимыми. - Безопасность — отсутствие инструкции
USERпоэтому контейнер запускается от root (DL3002), возможные секреты, жёстко закодированные вENV(DL3060), иsudoвнутриRUN(DL3004). - Размер & слои образа — множественные последовательные инструкции
RUN, которые следует объединить (DL3059), остаточные списки apt-get (DL3009), и отсутствие--no-install-recommends(DL3015). - Корректность & стиль — неизвестные инструкции (
DL3000), первая инструкция неFROM(DL3001),cdвнутриRUNвместоWORKDIR(DL3003), неверные портыEXPOSE(DL3011), непинированные пакетыpip(DL3013),ADDгде нуженCOPY(DL3020), shell-формаCMD/ENTRYPOINT(DL3025), отсутствиеHEALTHCHECK(DL3048), и устаревшая инструкцияMAINTAINER(DL4000).
Каждая проблема показывает номер строки, уровень серьёзности (ошибка, предупреждение или информация), код правила, совместимый с Hadolint, краткое сообщение и объяснение способа исправления.
Как его использовать
- Вставьте свой Dockerfile во входное поле или нажмите Try an example, чтобы загрузить намеренно беспорядочный пример.
- Прочитайте таблицу Summary для быстрого подсчёта ошибок/предупреждений/информации.
- Просмотрите таблицу Issues — коды правил совпадают с Hadolint, поэтому вы можете найти любое правило, которое не узнаёте.
- Скопируйте Formatted Dockerfile, который объединяет последовательные слои
RUNс&& \и сортирует списки пакетовapt-get,pipиapkалфавитно.
Это то же самое, что Hadolint?
Использует те же коды правил (DLxxxx) и охватывает наиболее важный подмножество проверок Hadolint, но это независимая реализация — не обёртка вокруг бинарного файла Hadolint — поэтому он будет обнаруживать меньше граничных случаев, чем полный инструмент. Идеален для быстрой проверки без установки ничего.
Модифицирует ли это мой Dockerfile?
Нет. Отформатированный вывод — это предложение, которое вы можете скопировать или загрузить; ваш ввод никогда не изменяется автоматически. Форматер консервативен — он переупорядочивает инструкции, но не добавляет и не удаляет функциональность.
Зачем сортировать списки пакетов?
Alfabetически отсортированные списки apt-get install/pip install/apk add легче просматривать, проверять в дифах и дедублицировать — распространённое соглашение о гигиене Dockerfile.
Конфиденциальность
Этот инструмент выполняется полностью в вашем браузере. Ваш Dockerfile никогда не загружается, не регистрируется и не отправляется на какой-либо сервер — весь лinting и форматирование происходит локально на вашем устройстве.