Обзор сборки 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 — это гораздо больше, чем простая команда сборки, и это не только упаковка вашего кода, это целая экосистема инструментов и функций, которые поддерживают не только общие задачи рабочего процесса, но и обеспечивают поддержку более сложных и продвинутых сценариев.
Упаковка вашего программного обеспечения. Создаёт и упаковать свое приложение, чтобы запускает его где угодно: локально или в облаке.
Многоступенчатые сборки. Сохраняйте свои образы маленькими и безопасными с минимальным количеством зависимостей.
Мультиплатформенные образы. Создавайте, продвигайте, извлекайте и запускать образы без проблем на различных компьютерных архитектурах.
Постройте драйверы. Настраивает, где и как вы запускаете свои сборки.
Постройте кэширование. Избегать ненужных повторений дорогостоящих операций, таких как установка пакетов.
Непрерывная интеграция. Узнайте, как использовать Docker в конвейерах непрерывной интеграции.
Экспортеры. Экспортируйте любой артефакт, который вам нравится, а не только образы Docker.
Bake. Организовывает свои сборки с помощью Bake.
Внешний интерфейс докерфайла. Узнайте о фронтенде Dockerfile для BuildKit.
Настраивает BuildKit. Глубокое погружение во внутренние компоненты BuildKit для получения максимальной отдачи от ваших сборок.