前置文章: 构建多平台 Docker 镜像
debian 11 后,之前的 Dockerfile
制作多平台镜像, 提示 qemu 运行错误,换个 multiarch/qemu-user-static
碰碰运气。
https://github.com/multiarch/qemu-user-static
docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
docker buildx rm builder
docker buildx create --name builder --driver docker-container --use
docker buildx inspect --bootstrap
构建多平台 Docker 镜像
利用 Docker 引入的插件 buildx,可以很轻松地构建多平台 Docker 镜像。buildx 是 docker build ... 命令的下一代替代品,它利用 BuildKit 的全部功能扩展了 docker build 的功能。
使用一行命令就可以,三个平台同时编译打包和推送到远程 DockerHub
docker buildx build -t hongwenjun/nginx-php \
--platform=linux/arm,linux/arm64,linux/amd64 . --push
果然之前安装的 binfmt_misc
太老了,不支持 Debian 11 ,换用新 qemu-user-static
成功构建多平台 Docker 镜像
BASED ON THE OFFICIAL DEBIAN CONFIGURATION DOCKER CONTAINER NGINX-PHP-FPM7.4 IMAGE
- https://hub.docker.com/repository/docker/hongwenjun/nginx-php