这是一个containerdv1.6.8 + kubernetesv1.25.3的集群,所有的组件都是二进制安装,包括containerd。
当在其中一台node节点上,使用ctr在k8s.io这个namespace中pull镜像时,会额外生成一个REF为 sha256的镜像,其他namespace不会出现这种现象。
例如:ctr -n k8s.io image pull nginx:1.23.1-alpine
ctr -n k8s.io image ls
REF | TYPE | DIGEST | SIZE | PLATFORMS | LABELS |
---|---|---|---|---|---|
docker.io/library/nginx:1.23.1-alpine | application/vnd.docker.distribution.manifest.list.v2+json | sha256:b87c350e6c69e0dc7069093dcda226c4430f3836682af4f649f2af9e9b5f1c74 | 9.7 MiB | linux/386,linux/amd64,linux/arm/v6,linux/arm/v7,linux/arm64/v8,linux/ppc64le,linux/s390x | io.cri-containerd.image=managed |
docker.io/library/nginx@sha256:b87c350e6c69e0dc7069093dcda226c4430f3836682af4f649f2af9e9b5f1c74 | application/vnd.docker.distribution.manifest.list.v2+json | sha256:b87c350e6c69e0dc7069093dcda226c4430f3836682af4f649f2af9e9b5f1c74 | 9.7 MiB | linux/386,linux/amd64,linux/arm/v6,linux/arm/v7,linux/arm64/v8,linux/ppc64le,linux/s390x | io.cri-containerd.image=managed |
以上两个镜像除了REF不一样,其他都相同。使用nerdctl -n k8s.io image ls,会查询出的REPOSITORY和TAG属性都为<none>的镜像。
其他namespace不会这样,不知道这是为什么?或者配置了哪个配置项?