kubernetes拉取私有Harbor仓库镜像

发布时间 2023-10-30 10:37:36作者: 邹姣姣

场景描述

  • 私有镜像仓库:http://172.16.30.56
  • kubernete集群使用的是containerd
    kubernete集群中部署服务时,报错:
 Error: ImagePullBackOff

kubernetes拉取私有Harbor仓库镜像配置说明

harbor检查

确保私有harbor能正常访问,能正常推送镜像:

  1. 页面访问正常

  2. docker获取镜像正常

containerd的配置检查

使用私有harbor,containerd需要配置仓库信任。

  1. 检查是否有做私有仓库信任
ls /etc/containerd/certs.d/



检查得出没有配置私有harbor的仓库信任。
2. 配置harbor仓库信任

mkdir /etc/containerd/certs.d/sit-meta-harbor
vi /etc/containerd/certs.d/sit-meta-harbor/hosts.toml 
server = "http://172.16.30.56:80"

[host."http://172.16.30.56:80"]
  capabilities = ["pull", "resolve", "push"]
  skip_verify = true

  1. 重新启动containerd
systemctl restart containerd.service
  1. 拉去镜像验证
第一次检查无镜像
ctr image ls -q
拉去镜像,带上harbor登录的账户密码
ctr image pull --plain-http=true -u admin:密码 172.16.30.56/sit-meta/sit-meta-api:6
再次检查则会有刚拉的镜像
ctr image ls -q