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)的時候出現(xiàn)的錯誤,我配置了大概5次吧,每次都是配置一上午的時間,所以總的來算花了大概整整3天的時間配置好的,其實(shí)每次都是這個問題出錯,我沒有解決,從網(wǎng)上查找方法根本就解決不了好吧,我不知道那些個大佬們是怎么解決的,反正我是看來好多的文章都是解決不了的,最后經(jīng)過經(jīng)歷過相同問題的大佬指點(diǎn),終于配好了
網(wǎng)上普遍的方法:
1換源:
1.修改/etc/docker/daemon.json
文件
vi /etc/docker/daemon.json
2.導(dǎo)入鏡像:(無論用上阿里云還是清華的鏡像源都仍然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服務(wù)配置
1.如果DNS服務(wù)器出現(xiàn)問題,也可能導(dǎo)致拉取鏡像報錯??梢酝ㄟ^查看/etc/resolv.conf文件來檢查DNS服務(wù)器設(shè)置:
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
最后真的是折磨的受不了了,之前安裝都是看的文章,突發(fā)奇想看看B站上有沒有手把手教學(xué)的,你別說,這個人的還真挺好:
但是還是不出意外,都是到./network.sh up報錯,我真服了
原因:
其實(shí)上面的報錯不是因?yàn)閔yperledger fabric難裝,而是從一開始docker就沒配好,教程都只是講解安裝docker,在ubuntu上一般docker都會給一個代理,不然連不上網(wǎng),也就導(dǎo)致一些文件下載不下來,畢竟這是人家國外的,這種問題真的是配環(huán)境的一大痛點(diǎn)。難繃了家人
解決方法:給docker配置一個代理:
說明一下:僅限于有自己的服務(wù)器,可以去阿里上買一個,或者可以科學(xué)上網(wǎng)
1. 在 /etc/systemd/system
目錄下創(chuàng)建 docker.service.d
目錄
sudo mkdir -p /etc/systemd/system/docker.service.d
2. 在該目錄下創(chuàng)建 http-proxy.conf
文件
sudo touch /etc/systemd/system/docker.service.d/http-proxy.conf
3. 選用你最喜歡的編輯器,編輯該文件并添加下面的內(nèi)容,這里使用 vi/vim
進(jìn)行編輯。
sudo vim /etc/systemd/system/docker.service.d/http-proxy.conf
4.根據(jù)自身需要添加下面的內(nèi)容并替換為實(shí)際的配置,一般只需要加 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了:
在General,端口號一般都是7890,也可以自己修改
這里把Allow LAN打開,鼠標(biāo)放上會顯示你的IP地址,我這里有兩個是虛擬機(jī)網(wǎng)卡,因?yàn)槭枪P記本所以這里的WLAN2是無線網(wǎng)卡,第一個是本地連接IP,我剛開始使用的是本地連接但是不行,所以使用WLAN2代理,最笨的方法:每個都試一遍
然后把TUN MODE打開,System Proxy打開,最后把Start with woindows打開,將配置文件內(nèi)容的IP和port換成自己的即可,保存配置文件
6.刷新更改并重新啟動 Docker
sudo systemctl daemon-reload sudo systemctl restart docker
恭喜,Docker Daemon
代理配置完成!這就可以運(yùn)行./network.sh up了,接下來迎接你的將是一路暢通!
到此這篇關(guān)于docker Get https://registry-1.docker.io/v2/: net/http: request canceled 報錯的文章就介紹到這了,更多相關(guān)docker Get https://registry-1.docker.io/v2/內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
詳解Docker 配置國內(nèi)免費(fèi)registry mirror
本篇文章主要介紹了 Docker 配置國內(nèi)免費(fèi)registry mirror,具有一定的參考價值,有興趣的小伙伴們可以參考一下2017-07-07Docker創(chuàng)建鏡像、怎么修改、上傳鏡像等詳細(xì)介紹
這篇文章主要介紹了Docker創(chuàng)建鏡像、怎么修改、上傳鏡像等詳細(xì)介紹的相關(guān)資料,需要的朋友可以參考下2016-12-12Docker network自定義網(wǎng)絡(luò)方式
這篇文章主要介紹了Docker network自定義網(wǎng)絡(luò)方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-05-05docker的基本使用及使如何用Docker 運(yùn)行D435i
這篇文章主要介紹了docker的基本使用及使如何用Docker 運(yùn)行D435i,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧2023-11-11