Настройка поддерживаемых платформ для узла
В этом шаге мы научимся указывать платформы, поддерживаемые узлом сборки. Это важно для создания мультиархитектурных образов. По умолчанию узел поддерживает только архитектуру хоста, на котором он запущен. Однако с помощью Buildx вы можете настроить узлы для поддержки дополнительных платформ с использованием эмуляции (например, QEMU).
Сначала проверим сборщик custombuilder
, созданный на предыдущем шаге, чтобы увидеть поддерживаемые его узлом платформы.
docker buildx inspect custombuilder
В выводе найдите поле "Platforms". Оно должно показывать нативную архитектуру вашей LabEx VM (например, linux/amd64
).
Теперь обновим узел node1
в custombuilder
, добавив поддержку дополнительных платформ. Используем команду docker buildx create
с флагами --append
и --platform
. Добавим поддержку linux/arm64
и linux/riscv64
.
docker buildx create --name custombuilder --append --node node1 --platform linux/arm64,linux/riscv64
Обратите внимание, что мы используем --append
с существующими именами сборщика и узла. Эта команда обновляет существующий узел node1
в custombuilder
, добавляя указанные платформы.
Проверим сборщик снова, чтобы увидеть обновлённый список платформ для node1
.
docker buildx inspect custombuilder
Теперь в поле "Platforms" для node1
должны отображаться linux/amd64
, linux/arm64
и linux/riscv64
. Это означает, что узел теперь может собирать образы для этих архитектур.