arm和x86架构服务器拉取arm64架构的docker镜像

dockerhub提供的镜像部分支持arm64架构

Docker

arm架构服务器拉取docker镜像,默认是arm架构

# docker pull centos
Using default tag: latest
latest: Pulling from library/centos
52f9ef134af7: Pull complete 
Digest: sha256:a27fd8080b517143cbbbab9dfb7c8571c40d67d534bbdee55bd6c473f432b177
Status: Downloaded newer image for centos:latest
docker.io/library/centos:latest

查看docker镜像的架构

$ docker inspect centos | grep -i 'architecture'
        "Architecture": "arm64",

x86平台拉取arm平台的docker镜像

对docker版本有限制

docker运行其他平台容器,需要使用--platform参数指定容器

docker19.03.9及以上版本才支持--platform参数

查看是否开启experimental功能

--platform 参数需要experimental为true,通过下面的命令可以验证是否开启

docker info | grep -i 'experimental'

开启experimental功能

修改daemon.json文件,增加下面的参数

"experimental": true

修改完成后,重启docker来验证

systemctl daemon reload
systemctl restart docker

docker info | grep -i 'experimental'

拉取arm平台的镜像

docker pull --platform arm64 centos

查看镜像使用的平台

$ docker inspect centos | grep -i 'architecture'
        "Architecture": "arm64",

如果不加 --platform参数,默认拉取自己当前cpu平台的镜像

如果本地有相同tag的镜像,只是平台不同的情况下,需要注意区分tag,不然直接docker pull就会覆盖掉之前的镜像,之前的镜像tag会变为<node>

相关推荐
helianying551 小时前
云原生架构下的AI智能编排:ScriptEcho赋能前端开发
前端·人工智能·云原生·架构
染诗3 小时前
docker部署flask项目后,请求时总是报拒绝连接错误
docker·容器·flask
大梦百万秋4 小时前
探索微服务架构:从单体应用到微服务的转变
微服务·云原生·架构
HsuYang4 小时前
Vite源码学习(九)——DEV流程中的核心类(下)
前端·javascript·架构
张3蜂5 小时前
docker 部署.netcore应用优势在什么地方?
docker·容器·.netcore
扎克begod5 小时前
Git进阶笔记系列(01)Git核心架构原理 | 常用命令实战集合
java·git·架构·github·springboot
XianxinMao7 小时前
2024大模型双向突破:MoE架构创新与小模型崛起
人工智能·架构
心惠天意7 小时前
docker-compose篇---创建jupyter并可用sudo的创建方式
docker·jupyter·容器
李匠20247 小时前
云计算架构学习之LNMP架构部署、架构拆分、负载均衡-会话保持
学习·架构·云计算