欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Docker拉取鏡像超時(shí)的原因分析與解決方法

 更新時(shí)間:2025年04月17日 09:35:12   作者:來(lái)自星星的坤  
這篇文章主要為大家詳細(xì)介紹了Docker在拉取鏡像時(shí)超時(shí)的相關(guān)原因分析與解決方法,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下

前言

最近在使用 Docker 拉取鏡像時(shí),遇到了一連串令人抓狂的超時(shí)報(bào)錯(cuò):

ERROR: Get https://registry-1.docker.io/v2/: net/http: request canceled while waiting for connection

這問(wèn)題聽(tīng)起來(lái)熟悉嗎?網(wǎng)上一搜,大家都建議你配置國(guó)內(nèi)鏡像源。但我試了好幾個(gè),照做之后依然拉!不!動(dòng)!,仿佛鏡像倉(cāng)庫(kù)從地球被搬到了火星。

于是,我花了一整天翻資料、試配置,最終完美解決。今天就來(lái)詳細(xì)分享這趟“排雷”過(guò)程,以及一個(gè)隱藏的關(guān)鍵點(diǎn),希望能幫你徹底解決 Docker 拉取鏡像超時(shí)的問(wèn)題。

一、問(wèn)題現(xiàn)象

在執(zhí)行如下命令拉取鏡像時(shí):

docker pull nginx

Docker 會(huì)嘗試從默認(rèn)倉(cāng)庫(kù) https://registry-1.docker.io/v2/ 拉取,但出現(xiàn)了下面這個(gè)報(bào)錯(cuò):

Get https://registry-1.docker.io/v2/: net/http: request canceled while waiting for connection

這個(gè)錯(cuò)誤大概率是因?yàn)榫W(wǎng)絡(luò)問(wèn)題,連接 Docker 官方倉(cāng)庫(kù)超時(shí)。國(guó)內(nèi)訪問(wèn) Docker Hub 一直不算穩(wěn)定,加速器成了剛需。

二、常規(guī)解決方案:配置國(guó)內(nèi)鏡像源

大部分教程都建議配置 /etc/docker/daemon.json 文件(沒(méi)有就新建一個(gè)),內(nèi)容如下:

{
  "registry-mirrors": [
    "https://docker.1panel.live",
    "https://dc.j8.work",
    "https://docker.m.daocloud.io",
    "https://dockerproxy.com",
    "https://docker.mirrors.ustc.edu.cn",
    "https://docker.nju.edu.cn"
  ]
}

配置完之后重啟 Docker:

systemctl daemon-reexec
systemctl restart docker

理論上應(yīng)該可以了……結(jié)果還是超時(shí)!

三、深入排查:這些隱藏配置你加了嗎

在我反復(fù)嘗試多種鏡像源無(wú)果之后,我開(kāi)始懷疑:

是不是僅僅配置 registry-mirrors 不夠?

答案是:是的!

我最終使用了下面這份更全面的配置,才真正解決問(wèn)題:

{
  "registry-mirrors": [
    "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",
    "https://do.nark.eu.org",
    "https://dc.j8.work",
    "https://gst6rzl9.mirror.aliyuncs.com",
    "https://registry.docker-cn.com",
    "http://hub-mirror.c.163.com",
    "http://mirrors.ustc.edu.cn/",
    "https://mirrors.tuna.tsinghua.edu.cn/",
    "http://mirrors.sohu.com/"
  ],
  "insecure-registries": [
    "registry.docker-cn.com",
    "docker.mirrors.ustc.edu.cn"
  ],
  "debug": true,
  "experimental": false
}

幾個(gè)關(guān)鍵點(diǎn)必須解釋清楚:

1.鏡像源要夠多

不是所有鏡像都適用于你當(dāng)前的網(wǎng)絡(luò)環(huán)境,多加幾個(gè)備用,不僅速度快,還能防止單點(diǎn)故障。

2.添加 insecure-registries

有些鏡像源不支持 HTTPS,或你所在的網(wǎng)絡(luò)環(huán)境中存在中間人干擾,Docker 默認(rèn)不會(huì)信任這些源。通過(guò)加上 "insecure-registries",你明確告訴 Docker:“我信它!”

3.debug 和 experimental 參數(shù)

這兩個(gè)不是解決問(wèn)題的核心,但建議開(kāi)啟 debug: true,可以打印更多日志方便后續(xù)排查。

四、完整操作流程總結(jié)

編輯或新建 /etc/docker/daemon.json:

sudo nano /etc/docker/daemon.json

粘貼上面的配置內(nèi)容。

重啟 Docker:

sudo systemctl daemon-reexec
sudo systemctl restart docker

驗(yàn)證是否生效:

docker info

在輸出中找到 "Registry Mirrors" 字段,如果配置的鏡像源都顯示出來(lái)了,就說(shuō)明生效了。

五、額外建議

科學(xué)上網(wǎng)優(yōu)先:如果你有穩(wěn)定的代理,其實(shí)使用官方鏡像源也沒(méi)問(wèn)題。

測(cè)試鏡像加速效果:可以用 curl 命令去訪問(wèn)鏡像源,看響應(yīng)速度。

定期更新鏡像源列表:有些鏡像站可能過(guò)期、下線,保持新鮮有助于穩(wěn)定。

六、寫(xiě)在最后

Docker 鏡像拉取超時(shí)這個(gè)坑,真的是國(guó)內(nèi)開(kāi)發(fā)者的“入門之痛”。

到此這篇關(guān)于Docker拉取鏡像超時(shí)的原因分析與解決方法的文章就介紹到這了,更多相關(guān)Docker拉取鏡像超時(shí)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 詳解Docker 下開(kāi)發(fā) hyperf 完整使用示例

    詳解Docker 下開(kāi)發(fā) hyperf 完整使用示例

    這篇文章主要介紹了詳解Docker 下開(kāi)發(fā) hyperf 完整使用示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-01-01
  • docker容器修改端口和目錄映射的方法步驟

    docker容器修改端口和目錄映射的方法步驟

    在使用Docker時(shí),容器的端口映射是一個(gè)核心概念,它允許容器與宿主機(jī)以及外部網(wǎng)絡(luò)進(jìn)行通信,這篇文章主要介紹了docker容器修改端口和目錄映射的方法步驟,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2025-03-03
  • Docker安裝Oracle19c史上最全步驟

    Docker安裝Oracle19c史上最全步驟

    本文主要介紹了Docker安裝Oracle19c,文中通過(guò)圖文介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-04-04
  • Docker Gitlab+Jenkins+Harbor構(gòu)建持久化平臺(tái)操作

    Docker Gitlab+Jenkins+Harbor構(gòu)建持久化平臺(tái)操作

    這篇文章主要介紹了Docker Gitlab+Jenkins+Harbor構(gòu)建持久化平臺(tái)操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-11-11
  • Dockerfile中ENTRYPOINT 和 CMD的區(qū)別說(shuō)明

    Dockerfile中ENTRYPOINT 和 CMD的區(qū)別說(shuō)明

    這篇文章主要介紹了Dockerfile中ENTRYPOINT 和 CMD的區(qū)別說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-11-11
  • Docker部署Vue項(xiàng)目的項(xiàng)目實(shí)踐

    Docker部署Vue項(xiàng)目的項(xiàng)目實(shí)踐

    本文主要介紹了Docker部署Vue項(xiàng)目的項(xiàng)目實(shí)踐,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-07-07
  • 備份Docker容器中的PostgreSQL數(shù)據(jù)的圖文實(shí)操教程

    備份Docker容器中的PostgreSQL數(shù)據(jù)的圖文實(shí)操教程

    現(xiàn)在docker容器很方便,可以一鍵部署項(xiàng)目,但是方便部署的同時(shí),也給運(yùn)維帶來(lái)了麻煩,docker中的pgsql數(shù)據(jù),如何進(jìn)行備份呢,本文小編給大家就介紹了備份Docker容器中的PostgreSQL數(shù)據(jù)的圖文實(shí)操教程,需要的朋友可以參考下
    2024-09-09
  • 使用Docker部署的基于binlog實(shí)現(xiàn)Mysql8的操作方法

    使用Docker部署的基于binlog實(shí)現(xiàn)Mysql8的操作方法

    MySQL 基于?Binlog?的主從復(fù)制(Master-Slave Replication)是 MySQL 數(shù)據(jù)庫(kù)中實(shí)現(xiàn)數(shù)據(jù)復(fù)制的一種機(jī)制,這篇文章主要介紹了使用Docker部署的基于binlog實(shí)現(xiàn)Mysql8,需要的朋友可以參考下
    2025-01-01
  • docker交叉編譯工具鏈解讀

    docker交叉編譯工具鏈解讀

    使用Docker容器進(jìn)行交叉編譯具有環(huán)境隔離、一致性、可移植性和簡(jiǎn)化配置等優(yōu)勢(shì),以下是一個(gè)示例的Dockerfile,用于創(chuàng)建一個(gè)包含C++11 ARM交叉編譯工具鏈的Docker容器,構(gòu)建完成后,可以在容器中進(jìn)行ARM交叉編譯
    2024-12-12
  • docker如何使用阿里加速器的方法

    docker如何使用阿里加速器的方法

    本篇文章主要介紹了docker如何使用阿里加速器的方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-07-07

最新評(píng)論