做一张网站图得多少钱,线上推广引流是做网站吗,图书馆门户网站建设,wordpress免费商业主题docker的多架构镜像构建 目前很多服务器都是基于arm架构的#xff0c;而现在大多数的docker镜像都是基于x86架构的。一种情况就是同样的代码编译成业务包做成镜像需要部署在不同架构的服务器上#xff0c;这个时候我们就可以使用docker的多平台构建了。 以下操作是在centos7.…docker的多架构镜像构建 目前很多服务器都是基于arm架构的而现在大多数的docker镜像都是基于x86架构的。一种情况就是同样的代码编译成业务包做成镜像需要部署在不同架构的服务器上这个时候我们就可以使用docker的多平台构建了。 以下操作是在centos7.9系统上完成x86_64位 注意要使用docker的多架构镜像构建功能linux内核需要大于4.19才行如下图我的centos系统的内核为5.4.278 如果不是4.19及以上的内核,请升级linux内核,centos7系统可以参考此文章升级内核:https://blog.csdn.net/pky86676022/article/details/139870965
一、启用docker buildx插件
Docker Buildx 是 Docker的CLI插件来自于Moby BuildKit 。你的docker版本不能低于19.10使用docker version命令查看docker版本 我的docker版本是26.1.4符合要求下面启用docker buildx功能 编辑docker的配置文件 **vim /etc/docker/daemon.json **在配置文件中新增如下标签对 “experimental”: true , 重启docker
sudo systemctl daemon-reload
sudo systemctl restart docker检查docker buildx版本 docker buildx version在当前的x86_64架构的机器上运行一个特权 Docker 容器启用 binfmt_misc 来运行非x86架构的 Docker 镜像
docker run --rm --privileged docker/binfmt:a7996909642ee92942dcd6cff44b9b95f08dad64-amd64运行如下命令检查是否其支持arm64架构的编译工作了
ls -al /proc/sys/fs/binfmt_misc/接下来创建一个新的支持多架构的构建器。
docker buildx create --use --name mybuilder
docker buildx inspect mybuilder --bootstrap
docker update --restartalways buildx_buildkit_mybuilder0检查这个构建器
docker buildx ls如图这个构建器可以构建linux/amd64和linux/arm64的镜像
二、写一个Dockerfile尝试构建多架构镜像并推送到仓库中
先登录我的私服仓库等下把多架构镜像推送到这里 我这里以制作一个Java运行环境的镜像为例演示。 vim Dockerfile
# 制作一个Java基础镜像
FROM alpine:3.18.7
LABEL maintainerpkyit
RUN apk add --no-cache openjdk8-jre tzdata curl
RUN cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime echo Asia/Shanghai /etc/timezone运行如下命令构建多架构镜像
docker buildx build \
-t registry.cn-hangzhou.aliyuncs.com/pkyit/jre8:alpine3.18.7 \
-f Dockerfile . \
--platform linux/amd64,linux/arm64 --push三、验证
等待片刻显示已经构建了linux下的amd64和arm64的2个镜像并且推送到阿里云的私服仓库中了。 不妨把arm64架构的镜像拉取下来验证一下看看是不是arm64架构的
# 拉取指定架构的镜像
docker pull --platformlinux/arm64 registry.cn-hangzhou.aliyuncs.com/pkyit/jre8:alpine3.18.7
# 检查指定镜像的架构
docker inspect registry.cn-hangzhou.aliyuncs.com/pkyit/jre8:alpine3.18.7 | grep Architecture以上就是docker多架构构建镜像的全部流程。
参考以下链接 https://blog.csdn.net/tanjunchen/article/details/124060471 https://blog.csdn.net/weixin_43403660/article/details/125974212 https://blog.csdn.net/m0_70748381/article/details/126865574 如果我的文章对您有帮助还请您多多支持我。支付宝帮忙扫一下吧