Docker-x86平台Docker拉取arm镜像
前言
因最近都在信创环境各种验证,信创环境架构已经是arm的,但现实使用却是x86(amd)架构。
docker manifest简介
使用镜像创建一个容器,该镜像必须与 Docker 宿主机系统架构一致,例如x86_64
架构的系统中只能使用x86_64
的镜像创建容器。
docker manifest
特性可支持用户在不同系统架构的机器上分别运行不同的架构的镜像。这一点基本不需要用户做任何适配,非常的方便。所以我们可以利用这点拉取不同架构镜像。
docker manifest 开启
manifest是个实验功能,所以需要在docker中进行打开。
首先修改docker配置
# 修改配置
vi /etc/docker/daemon.json
# 新增
"experimental": true
# 重新加载服务的配置文件
systemctl daemon-reload
# 重启docker
systemctl restart docker
# 测试manifest是否开启
docker version 或者 docker info
拉取指定平台镜像
如需拉取arm架构镜像:docker pull --platform=arm64 nacos/nacos-server:v2.2.3-slim
同理拉取amd架构:docker pull --platform=amd64 nginx:latest
--platform:该参数是用于拉取指定平台的镜像,也是实验性功能,在开启manifest功能后就会出现。通过该参数可以手动指定需要的CPU平台镜像,而不用自动去识别。
参考
1.https://docs.docker.com/engine/reference/commandline/manifest/