
Сервис, который анализирует образы Docker и сканирует на наличие уязвимостей.
ВАЖНОЕ ПРИМЕЧАНИЕ
Начиная с 2023 года Anchore Engine больше не поддерживается. Будущих версий выпущено не будет. Пользователям рекомендуется использовать Syft и Grype.
Для пользователей, заинтересованных в поддерживаемом коммерческом решении для сканирования контейнеров и обеспечения соответствия требованиям, запланируйте демонстрацию, чтобы ознакомиться с широким набором корпоративных возможностей Anchore Enterprise, включая управление SBOM, управление уязвимостями и управление соответствием.
О проекте
Anchore Engine — это проект с открытым исходным кодом, который предоставляет централизованный сервис для проверки, анализа и сертификации образов контейнеров. Anchore Engine поставляется в виде Docker-образа, который может работать автономно или в составе платформы оркестрации, такой как Kubernetes, Docker Swarm, Rancher, Amazon ECS и других платформ оркестрации контейнеров.
При развертывании Anchore Engine в вашей среде образы контейнеров загружаются и анализируются из реестров контейнеров, совместимых с Docker V2, а затем оцениваются на соответствие базе данных уязвимостей.
Историческая документация доступна на Anchore Documentation.
Anchore Engine можно использовать напрямую через RESTful API или через CLI.
Поддерживаемые операционные системы
Поддерживаемые пакеты
Существует несколько способов начать работу с Anchore Engine. Для получения актуальной информации о быстром старте и полной производственной установке с помощью docker-compose, Helm и других методов, пожалуйста, посетите:
Anchore Engine распространяется как Docker образ, доступный на DockerHub.
Полное руководство по быстрому старту см. в документации.
Чтобы быстро запустить установку Anchore Engine в системе с установленным Docker (и docker-compose), выполните следующие простые шаги:
curl https://engine.anchore.io/docs/quickstart/docker-compose.yaml > docker-compose.yaml
docker-compose up -d
После запуска Engine вы можете начать взаимодействие с системой с помощью CLI.
Anchore CLI — это простой способ управления и взаимодействия с Anchore Engine.
Anchore CLI можно установить с помощью команды Python pip или запустить CLI из образа контейнера Anchore Engine CLI. Смотрите проект Anchore CLI на Github для кода и дополнительных вариантов установки и использования.
По умолчанию Anchore CLI пытается подключиться к Anchore Engine по адресу http://localhost:8228/v1 без аутентификации.
Имя пользователя, пароль и URL сервера можно передавать в Anchore CLI в качестве аргументов командной строки:
--u TEXT Username eg. admin
--p TEXT Password eg. foobar
--url TEXT Service URL eg. http://localhost:8228/v1
Вместо передачи этих параметров при каждом вызове инструмента их также можно задать в качестве переменных окружения:
ANCHORE_CLI_URL=http://myserver.example.com:8228/v1
ANCHORE_CLI_USER=admin
ANCHORE_CLI_PASS=foobar
Добавить образ в Anchore Engine:
anchore-cli image add docker.io/library/debian:latest
Дождаться перехода образа в состояние 'analyzed':
anchore-cli image wait docker.io/library/debian:latest
Вывести список образов, проанализированных Anchore Engine:
anchore-cli image list
Получить обзорную и сводную информацию об образе:
anchore-cli image get docker.io/library/debian:latest
Вывести список фидов и дождаться завершения хотя бы одной синхронизации фида данных об уязвимостях. Первая синхронизация может занять некоторое время (20–30 минут); после этого синхронизации будут объединять только изменения.
anchore-cli system feeds list
anchore-cli system wait
Получить результаты сканирования уязвимостей образа:
anchore-cli image vuln docker.io/library/debian:latest os
Вывести список пакетов операционной системы, присутствующих в образе:
anchore-cli image content docker.io/library/debian:latest os
Определение внешнего API (пользовательского сервиса) см. в External API Swagger Spec. Если у вас запущен Anchore Engine, вы также можете просмотреть Swagger, направив браузер по адресу http://:8228/v1/ui/ (ПРИМЕЧАНИЕ: конечная косая черта обязательна для корректного отображения встроенного браузера Swagger UI).
Каждый сервис реализует свой собственный API, и все API определены в спецификации Swagger/OpenAPI. Каждый из них можно найти в каталоге anchore_engine/services/<servicename>/api/swagger.
Дополнительные сведения об использовании Anchore CLI с Anchore Engine см. в документации Anchore Engine.
Этот репозиторий был переформатирован с помощью Black в ноябре 2020 года. Этот коммит можно игнорировать в вашем локальном окружении при использовании git blame, так как он затронул много файлов. Чтобы игнорировать коммит, необходимо настроить git-blame на использование предоставленного файла: .git-blame-ignore-revs в качестве списка коммитов, игнорируемых для blame.
Установите локальную конфигурацию git для использования предоставленного файла, выполнив следующую команду из корня этого дерева исходных кодов:
git config blame.ignoreRevsFile .git-blame-ignore-revs