Обзор сборки Docker Build

Docker Build — одна из самых используемых функций Docker Engine. Каждый раз, когда вы создаёте образ, вы используете Docker Build. Сборка — это ключевая часть жизненного цикла разработки программного обеспечения, позволяющая упаковывать и компоновать код и отправлять его куда угодно.

Engine использует архитектуру клиент-сервер и состоит из множества компонентов и инструментов. Наиболее распространенным способом выполнения сборки является ввод команды сборка докеров. CLI отправляет запрос в Docker Engine, который, в свою очередь, выполняет вашу сборку.

Теперь в Engine есть два компонента, которые можно использовать для сборки образа. Начиная с 18.09 релиза, Engine поставляется с Moby BuildKit, новым компонентом для выполнения ваших сборок по умолчанию.

Новый клиент Docker Buildx представляет собой плагин CLI, который расширяет команду docker с полной поддержкой функций, предоставляемых набором инструментов BuildKit Builder. Команда docker buildx build обеспечивает тот же пользовательский интерфейс, что и docker build, со многими новыми функциями, такими как создание экземпляры строителей с заданной областью действия, одновременное построение на нескольких узлах, выходная конфигурация, встроенный создавать кэширование и указание целевой платформы. Кроме того, Buildx также поддерживает новые функции, которые пока недоступны для обычного docker build, такие как создание списков манифестов, распределенное кэширование и экспорт результатов сборки в архивы образов OCI.

Docker Build — это гораздо больше, чем простая команда сборки, и это не только упаковка вашего кода, это целая экосистема инструментов и функций, которые поддерживают не только общие задачи рабочего процесса, но и обеспечивают поддержку более сложных и продвинутых сценариев.