首页 > 其他分享 >一个Docker仓库问题的思考

一个Docker仓库问题的思考

时间:2023-10-23 18:35:14浏览次数:32  
标签:run 思考 仓库 registry io 镜像 Docker 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命令时抓两个包,居然是个内网地址,大概长这个样子
image
到这里问题大概清晰了,请求没出去内网,咨询网络管理员终于明了,研发环境要出内网需要开放审批,否则会被内网出口的管控系统拦截,抓包看到的山寨站点证书就是管控系统的。

网络审批流程比较复杂,只要手动把镜像下载下来,后面的工作都可以正常进行了;

标签:run,思考,仓库,registry,io,镜像,Docker,docker
From: https://www.cnblogs.com/bitlife/p/17783176.html

相关文章

  • Dockerfile
    五.Dockerfile目录五.Dockerfile1.Dockerfile指令2.构建2.1构建方法2.2使用脚本构建3.Dockerfile3.1tomcat应用示例3.2springboot应用示例3.3nginx应用示例3.4php应用示例4.推送镜像4.1推送到dockerhub4.2推送到阿里云1.Dockerfile指令指令描述FROM......
  • Docker基础
    目录1.docker介绍2.docker安装3.docker常用命令3.1docker信息3.2镜像操作3.3容器启动和状态管理3.4容器相关操作4.docker镜像4.1镜像加载原理4.2镜像操作4.2.1commit4.2.2export和import4.2.3save和load5.docker数据卷5.1volumes/bindmounts5.2tmpfs5.......
  • Docker网络
    目录1.网络类型1.1link(已不建议使用)1.2container(已不建议使用)1.3none1.4host1.5bridge/自定义网络(推荐)2.自定义网段网络3.bridge与自定义网段网络通信4.部署Redis集群示例1.网络类型1.1link(已不建议使用)link:--link连接的容器名或ID使用了link机制后,......
  • Harbir仓库
    目录http模式Harbor搭建http模式Harbor搭建https://github.com/goharbor/harbor/releaseshttps://github.com/docker/compose/releases#安装dockercurlhttps://download.docker.com/linux/centos/docker-ce.repo-o/etc/yum.repos.d/docker-ce.repoyum-yinstalldock......
  • Docker-Compose
    目录1.简介2.Composeyml规则3.Compose示例3.1Python-web应用3.2wordpress应用1.简介DockerCompose是Docker官方的开源项目,作用是通过docker-compose.yml定义运行多个容器官方文档Compose概念:Services:容器,应用,例如:web、redis、mysql...Project:一组关联的容......
  • docker-compose
    Compose简介Compose项目是Docker官方的开源项目,负责实现对Docker容器集群的快速编排。从功能上看,跟OpenStack中的Heat十分类似。其代码目前在https://github.com/docker/compose上开源。Compose定位是「定义和运行多个Docker容器的应用(Definingandrunnin......
  • docker-compose 安装 etcd
    目录docker-compose.yamldocker-compose.yamlversion:"3"services:etcd:hostname:etcdimage:bitnami/etcd:3deploy:replicas:1restart_policy:condition:on-failure#ports:#-"2379:2379"......
  • Docker镜像管理
    Usage:dockerimageCOMMANDManageimagesCommands:build从Dockerfile中构建镜像history显示镜像历史信息,如元数据等。。。importImportthecontentsfromatarballtocreateafilesystemimage。inspect详细镜像的详细信息load......
  • docker 基础
    https://www.bookstack.cn/read/docker_practice-1.3.0/image-list.md1.旧版本的Docker称为docker或者docker-engine,使用以下命令卸载旧版本$sudoapt-getremovedocker\docker-engine\docker.io2.更新apt软件包缓存,并安装dock......
  • 转:docker常用命令
    Docker常用命令整理docker启动:servicedockerstartdocker停止:servicedockerstopdocker重启:servicedockerrestart1.帮助命令docker-h,查看帮助docker-v,查看版本Dockerinfo,查看容器信息2.镜像命令dockerimages:列出本地主机上的镜像dockersearch某个镜像名字......