报错
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)
- {
- "registry-mirrors": [
- "https://0dj0t5fb.mirror.aliyuncs.com",
- "https://docker.mirrors.ustc.edu.cn",
- "https://6kx4zyno.mirror.aliyuncs.com",
- "https://registry.docker-cn.com"
- ]
- }
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:
- #nameserver 192.168.100.2
- nameserver 114.114.114.114
- 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,也可以自己修改
2.这里把Allow LAN打开,鼠标放上会显示你的IP地址,我这里有两个是虚拟机网卡,因为是笔记本所以这里的WLAN2是无线网卡,第一个是本地连接IP,我刚开始使用的是本地连接但是不可,所以使用WLAN2署理,最笨的方法:每个都试一遍
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了,接下来欢迎你的将是一起流通!
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |