首页 教程 开发工具 彻底解决docker:docker: Get https://registry-1.docker.io/v2/: net/http: request canceled 报错

彻底解决docker:docker: Get https://registry-1.docker.io/v2/: net/http: request canceled 报错

报错

1. docker: Error response from daemon: Get "https://registry-1.docker.io/v2/": net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers).
See 'docker run --help'.

2.Error response from daemon: Get "https://registry-1.docker.io/v2/": dial tcp ip: connect: connection refused

吐槽一下:我这是在配置超级账本(hyperledger fabric)的时候出现的错误,我配置了大概5次吧,每次都是配置一上午的时间,所以总的来算花了大概整整3天的时间配置好的,其实每次都是这个问题出错,我没有解决,从网上查找方法根本就解决不了好吧,我不知道那些个大佬们是怎么解决的,反正我是看来好多的文章都是解决不了的,最后经过经历过相同问题的大佬指点,终于配好了

网上普遍的方法:

1换源:

        1.修改/etc/docker/daemon.json文件        

 vi /etc/docker/daemon.json

        2.导入镜像:(无论用上阿里云还是清华的镜像源都仍然ERROR)

  1. {
  2. "registry-mirrors": [
  3. "https://0dj0t5fb.mirror.aliyuncs.com",
  4. "https://docker.mirrors.ustc.edu.cn",
  5. "https://6kx4zyno.mirror.aliyuncs.com",
  6. "https://registry.docker-cn.com"
  7. ]
  8. }

        3.重启:

systemctl daemon-reload 
systemctl restart docker

2. 修改DNS服务配置

        1.如果DNS服务器出现问题,也可能导致拉取镜像报错。可以通过查看/etc/resolv.conf文件来检查DNS服务器设置:

cat /etc/resolv.conf

        2.如果显示nameserver后面没有IP地址,或者显示的IP地址有问题,可以尝试修改该文件。例如,可以将nameserver 192.168.100.2注释掉,新增nameserver 114.114.114.114和nameserver 8.8.8.8:

  1. #nameserver 192.168.100.2
  2. nameserver 114.114.114.114
  3. nameserver 8.8.8.8

3.还有一个手动拉取的:(仍然是报错)

docker pull 仓库名/镜像名:版本号
docker pull docker.mirrors.ustc.edu.cn/library/mysql

最后真的是折磨的受不了了,之前安装都是看的文章,突发奇想看看B站上有没有手把手教学的,你别说,这个人的还真挺好:

【从0开始快速安装Hyperledger Fabric】 https://www.bilibili.com/video/BV1g3411h71Z/?share_source=copy_web&vd_source=091687f403c0c0bd4d4e4c69de304943

但是还是不出意外,都是到./network.sh up报错,我真服了

原因:

其实上面的报错不是因为hyperledger fabric难装,而是从一开始docker就没配好,教程都只是讲解安装docker,在ubuntu上一般docker都会给一个代理,不然连不上网,也就导致一些文件下载不下来,毕竟这是人家国外的,这种问题真的是配环境的一大痛点。难绷了家人

解决方法:给docker配置一个代理:

说明一下:仅限于有自己的服务器,可以去阿里上买一个,或者可以科学上网

1. 在 /etc/systemd/system 目录下创建 docker.service.d 目录

sudo mkdir -p /etc/systemd/system/docker.service.d

2. 在该目录下创建 http-proxy.conf 文件

sudo touch /etc/systemd/system/docker.service.d/http-proxy.conf

3. 选用你最喜欢的编辑器,编辑该文件并添加下面的内容,这里使用 vi/vim 进行编辑。

sudo vim /etc/systemd/system/docker.service.d/http-proxy.conf

4.根据自身需要添加下面的内容并替换为实际的配置,一般只需要加 HTTP_PROXY 和 HTTPS_PROXY

[Service]
Environment="HTTP_PROXY=http://proxy.example.com:8080/"
Environment="HTTPS_PROXY=http://proxy.example.com:8080/"
Environment="NO_PROXY=localhost,127.0.0.1,.example.com"

【注】HTTP_PROXY 用于代理访问 http 请求,HTTPS_PROXY 用于代理访问 https 请求,如果想某个 IP域名不走代理则配置到 NO_PROXY中。

5. 这里就需要打开你的clash for windows了:

        1.在General,端口号一般都是7890,也可以自己修改

彻底解决docker:docker: Get https://registry-1.docker.io/v2/: net/http: request canceled 报错

        2.这里把Allow LAN打开,鼠标放上会显示你的IP地址,我这里有两个是虚拟机网卡,因为是笔记本所以这里的WLAN2是无线网卡,第一个是本地连接IP,我刚开始使用的是本地连接但是不行,所以使用WLAN2代理,最笨的方法:每个都试一遍

彻底解决docker:docker: Get https://registry-1.docker.io/v2/: net/http: request canceled 报错

        3.然后把TUN MODE打开,System Proxy打开,最后把Start with woindows打开,将配置文件内容的IP和port换成自己的即可,保存配置文件

6.刷新更改并重新启动 Docker

sudo systemctl daemon-reload
sudo systemctl restart docker

恭喜,Docker Daemon 代理配置完成!这就可以运行./network.sh up了,接下来迎接你的将是一路畅通!

评论(0)条

提示:请勿发布广告垃圾评论,否则封号处理!!

    猜你喜欢
    【MySQL】用户管理

    【MySQL】用户管理

     服务器/数据库  2个月前  2.15k

    我们推荐使用普通用户对数据的访问。而root作为管理员可以对普通用户对应的权限进行设置和管理。如给张三和李四这样的普通用户权限设定后。就只能操作给你权限的库了。

    Cursor Rules 让开发效率变成10倍速

    Cursor Rules 让开发效率变成10倍速

     服务器/数据库  2个月前  1.21k

    在AI与编程的交汇点上,awesome-cursorrules项目犹如一座灯塔,指引着开发者们驶向更高效、更智能的编程未来。无论你是经验丰富的老手,还是刚入行的新人,这个项目都能为你的编程之旅增添一抹亮色。这些规则文件就像是你私人定制的AI助手,能够根据你的项目需求和个人偏好,精确地调教AI的行为。突然间,你会发现AI不仅能理解Next.js的最佳实践,还能自动应用TypeScript的类型检查,甚至主动提供Tailwind CSS的类名建议。探索新的应用场景,推动AI辅助编程的边界。

    探索Django 5: 从零开始,打造你的第一个Web应用

    探索Django 5: 从零开始,打造你的第一个Web应用

     服务器/数据库  2个月前  1.12k

    Django 是一个开放源代码的 Web 应用程序框架,由 Python 写成。它遵循 MVT(Model-View-Template)的设计模式,旨在帮助开发者高效地构建复杂且功能丰富的 Web 应用程序。随着每个版本的升级,Django 不断演变,提供更多功能和改进,让开发变得更加便捷。《Django 5 Web应用开发实战》集Django架站基础、项目实践、开发经验于一体,是一本从零基础到精通Django Web企业级开发技术的实战指南《Django 5 Web应用开发实战》内容以。

    MySQL 的mysql_secure_installation安全脚本执行过程介绍

    MySQL 的mysql_secure_installation安全脚本执行过程介绍

     服务器/数据库  2个月前  1.08k

    mysql_secure_installation 是 MySQL 提供的一个安全脚本,用于提高数据库服务器的安全性

    【MySQL基础篇】概述及SQL指令:DDL及DML

    【MySQL基础篇】概述及SQL指令:DDL及DML

     服务器/数据库  2个月前  483

    数据库是长期存储在计算机内的、有组织的、可共享的、统一管理的大量数据的集合。数据库不仅仅是数据的简单堆积,而是遵循一定的规则和模式进行组织和管理的。数据库中的数据可以包括文本、数字、图像、音频等各种类型的信息。

    Redis中的哨兵(Sentinel)

    Redis中的哨兵(Sentinel)

     服务器/数据库  2个月前  309

    ​ 上篇文章我们讲述了Redis中的主从复制(Redis分布式系统中的主从复制-CSDN博客),本篇文章针对主从复制中的问题引出Redis中的哨兵,希望本篇文章会对你有所帮助。