直接贴命令了,简记就要简单些。
#安装docker
dnf install moby-engine docker-buildx docker-cli docker-compose
#启用buildkit
mkdir -p /etc/docker
cat >/etc/docker/daemon.json<<EOF
{
"features": {
"buildkit": true
}
}
EOF
#启动docker
systemctl daemon-reload && systemctl enable --now docker
#安装qemu虚拟软件
dnf install qemu-user-binfmt qemu-user-static
#运行多架构模拟设置容器
docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
#创建docker构建容器并设为buildx使用。--driver-opt及后边的内容是代理,buildx容器内读不到docker进程的代理信息,只能传递进去
docker buildx create --name mybuilder --use --driver-opt env.http_proxy=192.168.56.1:7899 --driver-opt env.https_proxy=192.168.56.1:7899
#初始化构建容器
docker buildx inspect --bootstrap
#使用构建linux/arm64即aarch64的镜像, --load表示将镜像放到本地镜像中,想发布到镜像仓则改成--push
docker buildx build -t test:latest . --platform linux/arm64 --load
#以x86环境运行arm64架构镜像
docker run -d -p 80:80 --platform linux/arm64 test:latest