docker換源不生效的原因以及解決方案
docker換源不生效
標(biāo)題背景
網(wǎng)上一大堆教程告訴你如何換源,怎么執(zhí)行命令,但發(fā)現(xiàn)換源之后,docker pull 仍然拉不下來。
云里霧里不知道什么原因?
歷史操作
- 以阿里云鏡像加速為例,它提供了個人維度的加速鏈接,在這里可以看到 容器鏡像服務(wù)
- 按照上面的操作方式,
vim /etc/docker/daemon.json將個人加速鏈接配置進(jìn)去,重啟服務(wù) - 發(fā)現(xiàn) docker pull golang:1.22-alpine 依然報(bào)錯,說明沒有走到加速鏡像
Get "https://registry-1.docker.io/v2/": net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)
- 懷疑緩存導(dǎo)致,清理緩存
docker system prune -a - 依然無效后,陷入死鎖,在嘗試更換了幾個源之后沒有明顯解決。
原因
因?yàn)橐恍v史原因,從24年6月,docker 官方收緊了cn地區(qū)的鏡像服務(wù),同時,一些自建的鏡像加速公有云也并沒有完全收錄所有鏡像開放使用,以上面的阿里云鏈接為例

它引導(dǎo)用戶使用制品中心中的鏡像,但那里的鏡像種類和版本,與docker官方的幾乎不相同,
例如想要獲取 golang 鏡像,官方的是類似 golang:1.22-alpine ,但制品中心最新的是:
FROM anolis-registry.cn-zhangjiakou.cr.aliyuncs.com/openanolis/golang:1.19.4-8.6
看到落后了好幾個版本。但這個確實(shí)能很快速的拉取下來。
最終方案
由上可知,根本原因還是源本身的問題,還是需要找到可靠穩(wěn)定的國內(nèi)加速源鏈接,這里找到一個docker服務(wù)狀態(tài)監(jiān)控網(wǎng)站,找到鏡像加速一欄,將其加入到/etc/docker/daemon.json后,重新嘗試發(fā)現(xiàn)拉取鏡像加速的概率大了很多

總結(jié)
以上為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
在Docker容器中部署靜態(tài)網(wǎng)頁的方法教程
這篇文章主要給大家介紹了在Docker容器中部署靜態(tài)網(wǎng)頁的方法教程,文中介紹的非常詳細(xì),對大家具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起看看吧。2017-06-06
Docker設(shè)置mysql不區(qū)分大小寫問題
這篇文章主要介紹了Docker設(shè)置mysql不區(qū)分大小寫問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-01-01
使用 docker部署tomcat并接入skywalking的使用
這里主要介紹了使用 docker 部署 tomact 并接入 skywalking 的使用,因?yàn)樵诰W(wǎng)上并沒有查到太多相關(guān)的信息,所以這里記錄下來,需要對有需求的小伙伴提供一些幫助2021-04-04

