目錄
- 引言
- 一、問題
- 二、原因
- 三、解決方法
- 四、參考文獻
引言
在云原生技術火熱的當下,Docker可謂是其基礎,由于其簡單以及方便性,讓開發人員不必再為環境配置問題而傷腦筋,因為可將其看作一個虛擬機程序去理解。所以掌握好它可謂是很重要的事情,本文章將解決作者使用Docker時,遇到的一個基礎問題,這也是困擾了很多人的問題,在此寫篇文章分享給大家。
一、問題
在Ubuntu Linux環境下,docker pull ubuntu:20.04
會報錯或卡住(或其它鏡像),沒辦法從Docker Hub
下載鏡像。
二、原因
-
網絡限制:Docker Hub 的服務器位于國外(registry-1.docker.io),某些地區可能因網絡策略(如防火墻、國際帶寬限制)導致連接超時或阻斷。
-
DNS 污染:部分網絡環境中,Docker Hub 的域名解析可能被干擾,無法獲取正確的 IP 地址。
-
下載速度慢:即使能連接,國際帶寬的延遲和限速也會導致下載耗時過長甚至失敗。
三、解決方法
概括
:配置國內鏡像加速器
-
vim /etc/docker/daemon.json
,沒有則自行創建 -
將下面文本覆蓋到上述文件中
{"registry-mirrors": ["https://2a6bf1988cb6428c877f723ec7530dbc.mirror.swr.myhuaweicloud.com","https://docker.m.daocloud.io","https://hub-mirror.c.163.com","https://mirror.baidubce.com","https://your_preferred_mirror","https://dockerhub.icu","https://docker.registry.cyou","https://docker-cf.registry.cyou","https://dockercf.jsdelivr.fyi","https://docker.jsdelivr.fyi","https://dockertest.jsdelivr.fyi","https://mirror.aliyuncs.com","https://dockerproxy.com","https://mirror.baidubce.com","https://docker.m.daocloud.io","https://docker.nju.edu.cn","https://docker.mirrors.sjtug.sjtu.edu.cn","https://docker.mirrors.ustc.edu.cn","https://mirror.iscas.ac.cn","https://docker.rainbond.cc"]
}
-
重新加載docker配置文件
systemctl daemon-reload
-
重啟docker服務
systemctl restart docker.service
四、參考文獻
- 鏈接:來自“桂花煮柚子”同學的評論