Як використовувати Docker Buildx для збирання мультиязичних і мультиархітектурних образів?
Сучасний світ розробки включає підтримку безлічі апаратних архітектур, таких як традиційні процесори x86_64 та сучасні енергоефективні чипи на базі ARM, включаючи процесори Apple Silicon і серверні рішення. Docker Buildx є потужним інструментом на базі розширення BuildKit, який дозволяє збирати кросплатформні образи для різних процесорів з однієї робочої станції.
Традиційний механізм збирання створює образ лише для тієї архітектури хоста, на якій виконується команда. Buildx використовує емуляцію та сучасні можливості компіляції для одночасного створення єдиного багатоплатформного маніфесту образів, який автоматично визначає архітектуру цільового пристрою під час завантаження з реєстру.
Для початку роботи з інструментом необхідно створити та активувати новий екземпляр білдера, який підтримує розширені можливості ізоляції та паралельного збирання. Після цього розробник може використовувати спеціальний прапор платформи для вказання необхідних цільових архітектур.
Використання Buildx значно спрощує підтримку розподілених систем і хмарних інфраструктур, де додатки можуть запускатися як на потужних хмарних серверах, так і на периферійних пристроях інтернету речей з різними типами процесорних архітектур.