建木:为什么我们提供了新的公共镜像库
众所周知,建木在项目初期就已经完成了“自举”,就是使用建木完成自身的全部CI/CD/CO等自动化流程。 另外,由于建木本身和官方支持的节点都是打包为镜像发布到Docker Hub上,结果最近半年我们频繁碰到如下场景。 场景一: “CI服务的镜像构建步骤又失败了!已经重试10次了!!” “什么原因?” “原始镜像死活下载不下来啊!” “为什么不用国内的mirror?” “用了啊!用了反而更慢了!!” 场景二: “新应用今天部署不了啦!” “why?” “今天从Docker Hub下载太频繁,已经触发了Rate limit。6个小时之后再试吧!” “......” 以上场景并非只有建木会碰到,大部分在国内使用容器镜像的个人或组织都会碰到。虽然可以用各种方式绕过,但体验非常之差。因此,我们检查了一下根本原因。 原因分析 为啥直接从Docker Hub下载会失败 由于Docker Hub与Github等服务一样广泛使用了S3和CDN等服务,因此当下载请求被指向某些因为不可知原因而无法访问的网段时,会出现无法连接的情况。 为啥用国内的Mirror也不行 国内某些大厂提供的Mirror本质上是个缓...