dive CLI
dive показывает состав слоев Docker и OCI-образов, отмечает изменения файлов и оценивает лишнее место в образе для проверки в CI.
- 54 699 ★ репозитория
- Последний коммит
- MIT
Расширенный доступ
Почему такой уровень
- Анализ может использовать доступ к движку контейнеров и учетные данные реестра из окружения пользователя.
Установка
Ручная установка
DIVE_VERSION=$(curl -sL "https://api.github.com/repos/wagoodman/dive/releases/latest" | grep '"tag_name":' | sed -E 's/.*"v([^"]+)".*/\1/')
curl -fOL "https://github.com/wagoodman/dive/releases/download/v${DIVE_VERSION}/dive_${DIVE_VERSION}_linux_amd64.deb"
sudo apt install ./dive_${DIVE_VERSION}_linux_amd64.debПервый блок Installation для Ubuntu/Debian, deb-пакет. Команды сохранены дословно; выполняются только после проверки источника.
Доступ и проверки
Как мы проверяемРасширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.
- Анализ может использовать доступ к движку контейнеров и учетные данные реестра из окружения пользователя.
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
dive помогает понять, из чего состоит контейнерный образ. Пользователь выбирает слой и видит файлы, добавленные, измененные или удаленные на этом шаге. Общая картина показывает, где в сборку попали лишние материалы или дубли, увеличивающие ее размер. Интерактивный интерфейс дополняют режим CI и JSON-вывод. Образы можно читать из движка контейнеров, архивов, OCI-каталога или реестра. Оценка эффективности служит ориентиром для проверки Dockerfile; сама программа не переписывает сборку и не доказывает безопасность содержимого.
Для кого. Инженерам контейнерных сборок, которые разбирают рост образов и хотят контролировать лишнее место в CI.
Подходит, если
- После изменения Dockerfile образ заметно вырос и надо найти ответственный слой.
- В CI требуется проверять допустимый объем лишних файлов.
- Сохраненный архив образа нужно изучить без запуска приложения.
- Для отчета надо выгрузить анализ слоев в JSON.
Не подходит, если
- Нужен сканер уязвимостей или подтверждение отсутствия секретов.
- Оценка эффективности должна автоматически исправить Dockerfile.
- Обязателен анализ через движок в среде, где запрещен доступ к его сокету.
Пример запроса к агенту
Проанализируй сохраненный образ, найди слои с дублирующимися файлами и предложи изменения Dockerfile без новой сборки.Ограничения
Метрика лишнего места экспериментальна и не заменяет разбор причин роста образа. Возможности источников зависят от ОС и сборки dive; например, чтение локального хранилища Podman имеет отдельные условия. Доступ к Docker использует его контекст и учетные данные, поэтому проверьте, какой движок и реестр выбраны. Вариант установки через Snap может нарушить существующий Docker из apt; не смешивайте эти способы без проверки инструкции проекта.
Как отключить. Завершите анализ. Удаление dive не удаляет образы из движка или реестра.
Частые вопросы
Нужно ли запускать контейнер приложения?
Нет. dive анализирует образ и его слои. Выберите подходящий источник образа.
Есть ли режим без интерфейса?
Да. Используйте CI-режим или `--json` по документации.
Можно ли читать OCI-архив?
Да. Укажите соответствующий источник и проверьте путь к архиву.
Оценка эффективности показывает уязвимости?
Нет. Она относится к месту и слоям; безопасность проверяется отдельно.
Почему анализируется не та платформа?
Многоплатформенному образу надо явно выбрать вариант через `--platform`.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
CLI-инструментыТерминальный интерфейс показывает контейнеры, сервисы и образы Docker для совместного разбора окружения пользователем и агентом.
Терминальный клиент Docker связывает команды агента с контейнерами, образами, сетями и томами выбранного окружения.
Container от Aerovato
Container
CLI для постоянных Linux-окружений в Docker или Podman: у каждого проекта свой контейнер, где агент не видит остальную систему
Docker Skills
docker-skills
Официальные скиллы Docker для агентов: Dockerfile и сборка, Compose, Sandboxes, Docker Agent и скилл с подтверждением необратимых действий
nerdctl управляет containerd знакомыми командами Docker: запускает контейнеры, работает с образами и поддерживает Compose.
CLI для полного цикла CI/CD в Kubernetes: сборка образов, деплой через Helm и очистка container registry
Коротко о README
Автовыбор источника сообщает, откуда получен образ. JSON содержит идентификаторы слоев для последующего сопоставления.