一个Docker仓库问题的思考
近期项目有云上部署要求,产品要打包成docker镜像。之前产品已经发布过docker版本本次只需要需要更新下,于是交代组内另外一个同学更新下镜像,想着应该很简单;
中间经过熟悉docker知识点搭建环境等,过了大概2天,跟我反馈:环境搭建好了,但是无法制作镜像,连docker run helloworld也报错,错误信息就下面这个:
[root@mymaster xx]# docker run hello-world
Unable to find image 'hello-world:latest' locally
docker: Error response from daemon: Get https://registry-1.docker.io/v2/: x509: certificate is valid for localhost, not registry-1.docker.io.
See 'docker run --help'.
baidu或者google结果差不多,都是说daemon.json配置的仓库地址有问题,然后仓库地址也都改成国内的了,结果还是一样;
冷静下来仔细思考下,从错误信息看搜索结果应该是不太对的,报错的意思是站点证书不受信任,证书数主题和实际访问的地址对不上~
再进一步思考下无论是国内仓库还是国外仓库,都不太可能会使用自签名的山寨站点证书,所以这个错很值得商榷,要么请求被拦截了要么是DNS被污染了~但是有个现象,本人之前搭建的环境却没有问题,要确定也比较简单,对比下就有了:
从问题环境ping registry-1.docker.io,再从正常环境ping registry-1.docker.io返回地址居然不一样,那具体哪里出了问题呢?
在问题环境运行docker run命令时抓两个包,居然是个内网地址,大概长这个样子
到这里问题大概清晰了,请求没出去内网,咨询网络管理员终于明了,研发环境要出内网需要开放审批,否则会被内网出口的管控系统拦截,抓包看到的山寨站点证书就是管控系统的。
网络审批流程比较复杂,只要手动把镜像下载下来,后面的工作都可以正常进行了;
一个Docker仓库问题的思考的更多相关文章
- docker简单介绍----docker仓库的应用
docker hub:主要用来存储docker镜像的仓库 docker默认提供了一个docker仓库,我们也可以自建私有仓库或者使用第三方的docker仓库来pull或者push镜像 这里我们以阿里云 ...
- 使用nexus搭建一个docker私服
使用nexus搭建docker私服 一.需求: 二.实现步骤 1.编写`docker-compose`文件,实现`nexus`的部署 2.修改/usr/lib/systemd/system/docke ...
- 试用 Nexus OSS 3.0 的docker仓库 (二)
试用 Nexus OSS 3.0 的docker仓库 (一) : http://www.cnblogs.com/wzy5223/p/5410990.html 三. 创建docker私有仓库,docke ...
- 试用 Nexus OSS 3.0 的docker仓库 (一)
Nexus 3.0 可以创建三种docker仓库: 1. docker (proxy) 代理和缓存远程仓库 ,只能pull 2. docker (hosted) 托管仓库 ,私有仓库, ...
- 给Ocelot做一个Docker 镜像
写在前面 在微服务架构中,ApiGateway起到了承前启后,不仅可以根据客户端进行分类,也可以根据功能业务进行分类,而且对于服务调用服务也起到了很好的接口作用.目前在各个云端中,基本上都提供了Api ...
- 使用 Nexus Repository Manager 搭建私有docker仓库
使用容器安装Nexus3 1.下载nexus3的镜像: docker pull sonatype/nexus3 2.使用镜像启动一个容器: docker run -d --name nexus -- ...
- Docker仓库
仓库是集中存放镜像文件的场所.有时候会把仓库和仓库注册服务器(Registry)混为一谈,并不严格区分.实际上,仓库注册服务器上往往存放着多个仓库,每个仓库中又包含了多个镜像,每个镜像有不同的标签(t ...
- Docker学习笔记【四】Docker 仓库
访问仓库,仓库是集中从存放镜像的地方.类似Maven. Docker Hub 目前由Docker官方维护的一个公共仓库,其中包括15000的镜像. 注册 在 https://hub.docker.co ...
- 访问docker仓库
仓库(Repositiry)是集中存放镜像的地方,分为公共仓库和私有仓库.一个容易与之混淆的概念是注册服务器(Registry).实际上注册服务器是存放仓库的具体服务器,一个注册服务器上可以有多个仓库 ...
- 搭建Harbor企业级docker仓库
搭建Harbor企业级docker仓库 一.Harbor简介 1.Harbor介绍 Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器,通过添加一些企业必需的功能特性,例如 ...
随机推荐
- MIT 6.5840 Raft Implementation(2A, Leader Election)
Raft实现思路+细节 2A 任务分解 总体来说,2A中主要的任务就是选出领导人,在选出领导人的时候,我们要遵循下图. 在2A中,由于并没有出现日志复制,所以我们只需要考察两者的任期是否相等,以及接收 ...
- javascript中一些难以理解的专有名词 1(也不是很专有)
变量提升 变量提升:是指js代码执行过程中,js引擎把变量的声明和函数的声明提升到代码的开头的"行为". 变量和函数在代码里的位置是不会变的,而是在编译阶段被js引擎放入内存中. ...
- HashMap源码的阅读笔记
注释部分 Hash table based implementation of the <tt>Map</tt> interface. This * implementatio ...
- 2021-4-14 Tabpage隐藏功能
隐藏:只需要将tabpage的parent设置为空即可 this.tabPage1.Parent = null; 重新显示只需将parent重新设置成tabcontrol的子项 this.tabPag ...
- python:map函数
参考示例 def test(x): return x * 2 mylist = [1, 2, 3, 4, 5] result = list(map(test, mylist)) print(resul ...
- pandas 字典创建Dataframe
所有的ndarrays必须具有相同的长度.如果传递了索引(index),则索引的长度应等于数组的长度.如果没有传递索引,则默认情况下,索引为range(n),其中n为数组长度. import pand ...
- [故障处理]nfs导致系统负载异常
目录 情况 排查 原因 解决 情况 某台虚拟机服务器系统负载极高,但是cpu.内存.IO都正常.home目录下无法使用ls,也无法使用 df -h. 排查 top看cpu和内存,正常. iotop看i ...
- 批量获取FreeSWITCH所有分机号及其密码
前言 有次项目上需要获取所有FreeSWITCH注册分机的分机号和密码,就用python写了个小脚本来获取. 可以先把freeswitch/conf/directory/default/目录下的所有x ...
- ELK环境部署-基础环境安装(一)
ELK简介 ElasticSearch工作原理以及专用名词 ELK是Elasticsearch(ES) , Logstash, Kibana的结合,是一个开源日志收集软件. Elasticsearch ...
- 从壹开始前后端开发【.Net6+Vue3】(二)前端框架
项目名称:KeepGoing(继续前进) 介绍 工作后,学习的脚步一直停停走走,希望可以以此项目为基础,可以不断的迫使自己不断的学习以及成长 将以Girvs框架为基础,从壹开始二次开发一个前后端管理框 ...