使用镜像创建一个容器,该镜像必须与 Docker 宿主机系统架构一致,例如x86_64 架构的系统中只能使用x86_64的镜像创建容器。docker manifest特性可支持用户在不同系统架构的机器上分别运行不同的架构的镜像。这一点基本不需要用户做任何适配,非常的方便。

但是要做到这一点,需要docker cli支持manifest特性,这个特性默认是不开启的。

可通过修改$HOME/.docker/config.json文件,加入如下配置开启:

修改docker配置
vi  /root/.docker/config.json
{
        "auth" : {},
        "experimental": "enabled"
} 


开启实验特性
vi /etc/docker/daemon.json
{  
	"experimental": true
}
systemctl daemon-reload
systemctl restart docker

docker pull --platform=arm64 镜像

–platform:该参数是用于拉取指定平台的镜像,也是实验性功能,在上面步骤中开启后就会出现。通过该参数可以手动指定需要的CPU平台镜像,而不用自动去识别。

第二种方法

通过镜像的 sha256值拉取(有时候会失败),比如
在这里插入图片描述
在这里插入图片描述

拉镜像

docker pull nginx:stable-perl@sha256:a48175e7029f0ae21b8b4e2526d6c3dd7278a8479be0e666d729b6234108f4e1

在这里插入图片描述

Logo

开源、云原生的融合云平台

更多推荐