В этой статье мы рассмотрим Dockle — инструмент для проверки безопасности образов контейнеров, который можно использовать для поиска уязвимостей. Кроме того, с его помощью можно выполнять проверку на соответствие Best Practice, чтобы убедиться, что образ действительно создаётся на основе сохраненной истории команд.
$ VERSION=$(
curl --silent "https://api.github.com/repos/goodwithtech/dockle/releases/latest" | \
grep '"tag_name":' | \
sed -E 's/.*"v([^"]+)".*/\1/' \
) && rpm -ivh https://github.com/goodwithtech/dockle/releases/download/v${VERSION}/dockle_${VERSION}_Linux-64bit.rpm
#Ubuntu
$ VERSION=$(
curl --silent "https://api.github.com/repos/goodwithtech/dockle/releases/latest" | \
grep '"tag_name":' | \
sed -E 's/.*"v([^"]+)".*/\1/' \
) && curl -L -o dockle.deb https://github.com/goodwithtech/dockle/releases/download/v${VERSION}/dockle_${VERSION}_Linux-64bit.deb
$ sudo dpkg -i dockle.deb && rm dockle.deb
После установки утилиты всё, что вам нужно сделать, — это указать имя образа. Больше ничего настраивать не нужно, вам даже не потребуется Docker.
Попробуем запустить Dockle в Docker, на скриншоте видно, что утилита отлично работает:
Основные функции и преимущества Dockle
По ссылкам ниже вы можете найти примеры того, как настроить системы CI / CD для работы с Dockle:
Источник статьи: https://habr.com/ru/company/timeweb/blog/561378/
Установка Dockle
Трудностей при установке утилиты возникнуть не должно:- Установка в OSX
- Установка в Linux
$ VERSION=$(
curl --silent "https://api.github.com/repos/goodwithtech/dockle/releases/latest" | \
grep '"tag_name":' | \
sed -E 's/.*"v([^"]+)".*/\1/' \
) && rpm -ivh https://github.com/goodwithtech/dockle/releases/download/v${VERSION}/dockle_${VERSION}_Linux-64bit.rpm
#Ubuntu
$ VERSION=$(
curl --silent "https://api.github.com/repos/goodwithtech/dockle/releases/latest" | \
grep '"tag_name":' | \
sed -E 's/.*"v([^"]+)".*/\1/' \
) && curl -L -o dockle.deb https://github.com/goodwithtech/dockle/releases/download/v${VERSION}/dockle_${VERSION}_Linux-64bit.deb
$ sudo dpkg -i dockle.deb && rm dockle.deb
После установки утилиты всё, что вам нужно сделать, — это указать имя образа. Больше ничего настраивать не нужно, вам даже не потребуется Docker.
Пример использования Dockle
Запускаем утилиту, указав имя образа. Если проблем нет, в консоль будет выведено сообщение PASS, а при обнаружении проблем или уязвимостей — подробная информация о них:
Попробуем запустить Dockle в Docker, на скриншоте видно, что утилита отлично работает:

Основные функции и преимущества Dockle
- поиск уязвимостей в образах,
- помощь в создании правильного Dockerfile,
- простота в использовании, нужно указать только имя изображения,
- поддержка CIS Benchmarks.
Сравнение с другими инструментами
Существует большое количество похожих инструментов для диагностики безопасности, например: Docker Bench или Hadolint. Но в сравнении с ними Dockle более функциональна:
Применение Dockle в DevSecOps
Думаю, что эта небольшая статья — хорошая отправная точка для начала работы с Dockle. Она может легко использоваться в CI, улучшит ваши пайплайны в соответствии с концепцией DevSecOps.По ссылкам ниже вы можете найти примеры того, как настроить системы CI / CD для работы с Dockle:
Источник статьи: https://habr.com/ru/company/timeweb/blog/561378/