解决docker pull镜像报错的问题

 更新时间:2021年03月29日 11:07:06   作者:Urmsone  
这篇文章主要介绍了解决docker pull镜像报错的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

描述:

在win10下安装VM,在VM里运行docker,使用docker pull拉取镜像时报错

一、

Get https://registry-1.docker.io/v2/: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)

原因:

使用docker pull 命令拉取镜像时,如果不添加额外的信息如docker pull nginx,则会默认镜像拉取地址为国外仓库,导致DNS解析超时。

解决办法:

1.)修改VM默认的DNS为8.8.8.8

2.)使用国内的镜像仓库拉取镜像

二、

Trying to pull repository docker.io/library/nginx ... Get https://registry-1.docker.io/v2/: net/http: TLS handshake timeout

原因:

也是因为使用国外地址,导致http握手失败。

解决办法:

1.)每次拉取镜像时都手动指定国内仓库地址docker pull registry.docker-cn.com/library/nginx

2.)修改 /etc/docker/daemon.json 文件(把默认仓库地址修改为国内地址,省去每次都手动输入)

vim /etc/docker/daemon.json -> 写入
{ "registry-mirrors": ["https://registry.docker-cn.com"] }

最后,重启docker即可systemctl daemon-reload + systemctl restart docker

三、吐槽一下CSDN的markdown是真心难用,很多语法都不支持。

补充:解决docker pull镜像报错或者超时的方案,将拉取地址改为国内镜像仓库

docker默认镜像拉取地址为国外仓库下载速度较慢,甚至会报如下这种错误

Error response from daemon: Get https://docker.elastic.co/v2/: net/http: TLS handshake timeout

解决方法修改

/etc/docker/daemon.json 文件并添加上 registry-mirrors 键值。然后重启docker就可以了
{
 "registry-mirrors": ["https://registry.docker-cn.com"]
}

补充:解决docker在CentOS7下不能下载镜像timeout的问题

问题

昨天买了六个月阿里云服务器的学生机用来部署毕设环境,在鼓捣docker的时候出现问题,docker安装成功并且已经成功启动,如图

但在pull镜像的时候却出现超时无法下载镜像的问题,估计是国内docker官方镜像被墙了,网上找了好久发现要使用国内镜像加速,推荐的有Daocloud和阿里云,我使用的是Daocloud镜像加速,注册了账号之后上方会有一个镜像加速的超链接

点进去之后还有各种系统的脚本,用于添加国内镜像加速

运行脚本之后再执行pull操作,镜像成功下载

这时候执行docker images可以看到已下载的镜像

做个记录,以免时间久了会遗忘

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。

相关文章

  • docker利用nextcloud搭建一个私有百度云盘

    docker利用nextcloud搭建一个私有百度云盘

    这篇文章主要介绍了docker利用nextcloud搭建一个私有百度云盘,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-02-02
  • docker使用storage出现Exit导致文件无法上传服务器的问题及解决方案

    docker使用storage出现Exit导致文件无法上传服务器的问题及解决方案

    这篇文章主要介绍了docker使用storage出现Exit导致文件无法上传服务器解决方案,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-06-06
  • Docker镜像创建的方法

    Docker镜像创建的方法

    本文给大家汇总介绍了docker中镜像创建的几种方法,包括基于已有镜像创建、基于本地模板创建以及基于Dockerfile创建。有需要的小伙伴可以参考下
    2018-08-08
  • docker容器存储清理删除所需命令和方法

    docker容器存储清理删除所需命令和方法

    这篇文章主要介绍了docker容器存储清理所需命令和方法,我在用docker安装的es使用过程中,发现内存占满了,我把全部的都删除掉了,但有时候数据我们必须要使用,所以不能全删,需要指定删除,下面就是一些docker容器存储清理所需的一些命令和方法,需要的朋友可以参考下
    2023-01-01
  • Docker如何实现修改Docker0网桥默认网段

    Docker如何实现修改Docker0网桥默认网段

    这篇文章主要介绍了Docker如何实现修改Docker0网桥默认网段,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-12-12
  • docker实践之docker-compose部署mysql方式

    docker实践之docker-compose部署mysql方式

    这篇文章主要介绍了docker实践之docker-compose部署mysql方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-08-08
  • 继docker之后podman容器技术崛起

    继docker之后podman容器技术崛起

    这篇文章主要为大家介绍了继docker之后的podman云原生容器技术崛起的详细介绍,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步
    2022-03-03
  • docker生命周期管理和镜像管理命令详解

    docker生命周期管理和镜像管理命令详解

    Docker通过容器技术提供了一种轻量级、快速部署和可移植的应用程序运行环境,极大地简化了应用程序的部署和管理过程,提高了开发和运维的效率,这篇文章主要介绍了docker生命周期管理和镜像管理命令,需要的朋友可以参考下
    2023-08-08
  • mac docker如何修改daemon.json文件

    mac docker如何修改daemon.json文件

    这篇文章主要介绍了mac docker如何修改daemon.json文件问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-08-08
  • Docker启动PostgreSQL时创建多个数据库的解决方案

    Docker启动PostgreSQL时创建多个数据库的解决方案

    这篇文章主要介绍了Docker启动PostgreSQL时创建多个数据库的解决方案,重点给大家介绍如何把shell/sql脚本放入/docker-entrypoint-initdb.d/目录中,让容器启动的时候自动执行创建
    2021-06-06

最新评论