如何构建x86_64和arm等多cpu指令集容器镜像

介绍

本文主要介绍docker如何构建支持多平台(x86_64,arm)的镜像以及依赖的基础环境。

系统依赖以及环境要求

  • 内核:4.8+
  • qemu、qemu-user
  • docker版本:19.03+

构建多架构镜像步骤

#1.安装cpu指令集模拟平台
apt install -y qemu-user-static binfmt-support
其中,qemu-user-static是一个可以在当前操作系统来运行其他架构的一个仿真器。binfmt-support是一个解析不同系统的二进制文件给内核执行,再将执行结果返回给用户空间的进程。
#2.安装docker后,启用docker cli experimental特性
echo -e '{\n "experimental": enabled"\n}' > ~/.docker/config.json
或者设置环境变量:export DOCKER_CLI_EXPERIMENTAL=enabled
#3. 配置多平台cpu指令集模拟器,让docker支持除当前处理器之外的其他cpu指令集:https://github.com/multiarch/qemu-user-static
docker run -rm --privileged multiarch/qemu-user-static --reset -p yes
#4.列出builder
docker buildx ls
注意:当前使用的是默认的 builder,不能使用,需要创建一个新的builder
#5.创建builder
docker buildx create --use --name mybuilder
#6.查看创建的builder
docker buildx inspect --bootstrap
#7.构建和自动推到镜像仓库
docker buildx build --platform linux/amd64,linux/arm64 -t repository:tag  --push .
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值