docker 缺少 buildx armv7 平台

docker buildx armv7 platform missing

我正在尝试为 raspberry pi 4 (linux/arm/v7) 构建一个 docker 图像。我正在使用 Ubuntu WSL。我已经能够毫无问题地为 Ubuntu WSL 构建图像。 我正在使用 docker buildx 为 raspberry pi4 (armv7) 构建映像。我这样创建构建器:

docker buildx create --name my_builder

但列出构建器时,它看起来缺少 armv7 以及其他平台。知道这怎么可能吗? Ubuntu WSL 不支持跨平台吗?我是否需要直接从 Windows 或其他主机平台执行此操作?

> docker buildx inspect
Name:   my_builder
Driver: docker-container

Nodes:
Name:      my_builder0
Endpoint:  unix:///var/run/docker.sock
Status:    running
Platforms: linux/amd64, linux/amd64/v2, linux/amd64/v3, linux/386

如果这有帮助:

> docker buildx ls
NAME/NODE                 DRIVER/ENDPOINT             STATUS                 PLATFORMS
my_builder *              docker-container
  my_builder0 unix:///var/run/docker.sock             running                linux/amd64, linux/amd64/v2, linux/amd64/v3, linux/386
desktop-linux                                         protocol not available
default                   docker
  default                 default                     running                linux/amd64, linux/386

安装QEMU应该可以

sudo apt-get install -y qemu qemu-user-static

之后你应该有更多 architectures/platforms 来构建图像。