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>

相关推荐
金刚猿5 小时前
01_虚拟机中间件部署_root 用户安装 docker 容器,配置非root用户权限
docker·中间件·容器
yunteng5215 小时前
通用架构(同城双活)(单点接入)
架构·同城双活·单点接入
JH_Kong5 小时前
解决 WSL 中 Docker 权限问题:从踩坑到完整修复
docker·容器
忆~遂愿5 小时前
GE 引擎与算子版本控制:确保前向兼容性与图重写策略的稳定性
大数据·开发语言·docker
麦聪聊数据5 小时前
Web 原生架构如何重塑企业级数据库协作流?
数据库·sql·低代码·架构
程序员侠客行6 小时前
Mybatis连接池实现及池化模式
java·后端·架构·mybatis
bobuddy8 小时前
射频收发机架构简介
架构·射频工程
桌面运维家8 小时前
vDisk考试环境IO性能怎么优化?VOI架构实战指南
架构
70asunflower9 小时前
Emulation,Simulation,Virtualization,Imitation 的区别?
linux·docker
一个骇客9 小时前
让你的数据成为“操作日志”和“模型饲料”:事件溯源、CQRS与DataFrame漫谈
架构