解决docker登录私仓失败cannot validate certificate for 192.168.76.131 because it doesn‘t contain any IP SANs
作者:还是那片西瓜吗
文章主要讲述了如何搭建和配置Harbor镜像仓库,并详细描述了解决在登录Harbor私仓时遇到的问题的方法,包括重启Docker服务、解决登录报错、重新配置认证等步骤,最后成功拉取镜像
一、搭建Harbor镜像仓库

二、配置docker加速与私仓认证
cat <<EOF > /etc/docker/daemon.json
{
"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"],
"registry-mirrors": ["https://6kx4zyno.mirror.aliyuncs.com"],
"registry-mirrors": ["https://你主机的内网IP:4430"]
}
EOF

三、重启docker服务
systemctl daemon-reload systemctl restart docker.service
四、登录harbor私仓
docker login https://192.168.11.128:4430/harbor -uadmin
报错信息:
Error response from daemon: Get https://192.168.76.131:4430/v2/: x509: cannot validate certificate for 192.168.76.131 because it doesn't contain any IP SANs

五、最后解决办法
解决如下:
vim /usr/lib/systemd/system/docker.service
ExecStart=/usr/bin/dockerd --insecure-registry https://192.168.76.131:4430

六、再次重启docker服务
systemctl daemon-reload && systemctl restart docker.service
七、再次登录Harbor私仓
docker login https://192.168.11.128:4430/harbor -uadmin

八、查看认证文件
cat /root/.docker/config.json

九、拉取镜像
docker pull 192.168.11.128:4430/library/jenkins:latest

OK,拉取成功镜像。
十、重新配置docker加速与私仓认证(可跳过上面第五步骤)
1、重新配置docker私仓认证
vim /etc/docker/daemon.json
{
"registry-mirrors": ["https://vgljcdk8.mirror.aliyuncs.com"],
"insecure-registries": ["https://192.168.11.128:4430"]
}

2、恢复原配置
vim /usr/lib/systemd/system/docker.service

3、删除docker认证文件与重启docker服务
rm -rf /root/.docker/ && systemctl daemon-reload && systemctl restart docker.service
4、再次拉取镜像
docker pull 192.168.11.128:4430/library/jenkins:latest

总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
