遇到一个很蛋疼的问题,,生产环境docker在拉取公网tomcat某版本镜像时竟然失败了,408超时,网上一顿查找说添加国内镜像就可以了,但我修改后发现没作用。

然后在测试环境上又是OK的,于是考虑难道是docker最新版本问题?或者要强制登录了?于是想安装指定版本docker,文档都找好了,又想先去之前别的生产服务器安装的旧版本docker试试吧,这一试,出问题了,竟然也不可用!!!

于是马上联系IT,责问他们最近改什么配置了导致无法拉取公网镜像,因为测试环境是正常的。他们矢口否认,并亲自为我操作,结果一顿操作发现真的拉取不下来,整了好半天也不行,,,于是给我想其他替代方案,把测试环境的导出到生产环境,我一想,这不行,明明是你们网络有限制,这不是绕开问题增加我的难度吗,事情不了了之我就下班了,快到家了IT处理员又给我打电话让我在群里说点好话,他真的解决不了,我给他宽限到今天处理。

结果今天来,换了一个镜像拉取,发现成功了。。。原来是那个镜像有问题,换了几个发现都无法下载,以tomcat:8-jdk8-openjdk为例,只有这个版本可以pull下来,其他的版本全部不行,不知道什么原因。。。太坑了。。。还不好意思向IT道歉,只好说换思路解决了。。。太坑了。。。但是不明白是为什么呢???而且那个不能pull下来的镜像确实在测试环境是可以轻易拉取下来的。。。烦人哦。。。

补充添加国内镜像方法,参考文章:https://blog.51cto.com/meiling/3183177

在/etc/docker新建文件daemon.json并添加如下内容:

vi /etc/docker/daemon.json
# 以下内容只选其中之一就行
{
  "registry-mirrors": ["https://hub-mirror.c.163.com/","https://docker.mirrors.ustc.edu.cn/","https://你的阿里镜像地址标签.mirror.aliyuncs.com"]
}