Docker如何更換鏡像源提高拉取速度

在這里插入圖片描述

在國內,由于網絡政策和限制,直接訪問DockerHub速度很慢,尤其是在拉取大型鏡像時。為了解決這個問題,常用的方法就是更換鏡像源。本文將詳細介紹如何更換Docker鏡像源,并提供當前可用的鏡像源。

換源方法

方法1:臨時換源

如果只是偶爾需要使用其他鏡像源,可以在每次拉取鏡像時指定鏡像源。示例如下:

sudo docker pull 鏡像源地址/鏡像名

例如,拉取hello-world鏡像:

sudo docker pull docker.m.daocloud.io/hello-world
注意:
  • 每次拉取鏡像時都需要指定鏡像源。如果忘記指定,Docker將默認從DockerHub拉取鏡像,速度會很慢。
  • 這種方法適合偶爾需要臨時換源,但每次都要手動指定鏡像源,操作繁瑣。

方法2:永久換源(推薦)

為了避免每次都手動指定鏡像源,我們可以修改Docker配置文件,永久性地更換鏡像源。只需設置一次,之后每次拉取鏡像都會自動使用新的鏡像源。

1. 創建配置目錄

首先需要創建一個配置目錄,通常在/etc/docker下:

sudo mkdir -p /etc/docker

解釋: mkdir -p會檢查目錄是否存在,如果不存在則創建,因此可以直接執行,不會報錯。

2. 修改daemon.json配置文件

然后需要在該目錄下創建(或修改)daemon.json文件,并將鏡像源地址寫入文件。可以使用命令行直接輸入配置:

sudo tee /etc/docker/daemon.json <<-'EOF'
{"registry-mirrors": ["https://docker.m.daocloud.io","https://docker.imgdb.de","https://docker-0.unsee.tech","https://docker.hlmirror.com","https://docker.1ms.run","https://func.ink","https://lispy.org","https://docker.xiaogenban1993.com"]
}
EOF

或者,你可以使用文本編輯器打開文件并粘貼配置:

sudo nano /etc/docker/daemon.json

然后粘貼以下內容:

{"registry-mirrors": ["https://docker.m.daocloud.io","https://docker.imgdb.de","https://docker-0.unsee.tech","https://docker.hlmirror.com","https://docker.1ms.run","https://func.ink","https://lispy.org","https://docker.xiaogenban1993.com"]
}
3. 重啟Docker服務

修改完配置后,必須重啟Docker服務才能使新的鏡像源生效:

sudo systemctl daemon-reload && sudo systemctl restart docker

解釋: daemon-reload命令告訴系統重新加載配置文件,restart docker則會重啟Docker服務,應用新的配置。

4. 驗證配置

最后,驗證是否配置成功,可以通過拉取一個簡單的鏡像來測試,例如hello-world

sudo docker pull hello-world

如果配置成功,你應該看到如下輸出(鏡像拉取成功):

Hello from Docker!
This message shows that your installation appears to be working correctly.

如果出現其他錯誤信息,說明配置可能沒有生效或者鏡像源無法訪問。

常見問題及解決方案

1. docker search無法使用

鏡像源的加速功能僅支持docker pull,即拉取鏡像。當使用docker search命令時,鏡像源并不加速此操作。因為search命令需要訪問DockerHub官方倉庫,而鏡像源僅能加速拉取操作。

解決方法: 如果需要使用docker search,可以考慮使用VPN或科學上網來訪問DockerHub,或者直接從官方倉庫查找鏡像。

2. 換源后報錯

如果在換源之后依然遇到問題,可能會出現以下錯誤信息:

Error response from daemon: Get https://registry-1.docker.io/v2/: dial tcp: lookup registry-1.docker.io on 127.0.0.11:53: no such host

這通常是因為配置文件未正確加載或者鏡像源不可用。此時,建議執行以下操作:

  • 檢查配置文件: 確保/etc/docker/daemon.json文件格式正確,且鏡像源地址無誤。
  • 重啟Docker服務: 確保執行了sudo systemctl daemon-reload && sudo systemctl restart docker命令。
  • 測試鏡像源: 使用sudo docker pull hello-world來測試鏡像源是否可用。

3. 如何測試鏡像源是否可用

可以通過拉取hello-world鏡像來測試鏡像源是否正常工作。雖然它不代表所有鏡像都可用,但它是一個標準的基礎鏡像,適合用于測試。

sudo docker pull hello-world

如果能夠成功拉取,說明鏡像源工作正常。如果失敗,可能是網絡問題或鏡像源不可用。

換源速通版

為了快速配置,直接復制以下命令:

# 創建目錄
sudo mkdir -p /etc/docker# 配置鏡像源
sudo tee /etc/docker/daemon.json <<-'EOF'
{"registry-mirrors": ["https://docker.m.daocloud.io","https://docker.imgdb.de","https://docker-0.unsee.tech","https://docker.hlmirror.com","https://docker.1ms.run","https://func.ink","https://lispy.org","https://docker.xiaogenban1993.com"]
}
EOF# 重啟Docker服務
sudo systemctl daemon-reload && sudo systemctl restart docker# 驗證配置
sudo docker pull hello-world

通過配置Docker鏡像源,國內用戶可以大大提升鏡像拉取速度。希望這篇教程能幫助你解決速度慢的問題!如果遇到問題,歡迎留言討論。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/79875.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/79875.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/79875.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

第一篇:從哲學到管理——實踐論與矛盾論如何重塑企業思維

引言&#xff1a;當革命哲學照亮現代商業 1937年&#xff0c;毛澤東在戰火中寫就的《實踐論》《矛盾論》&#xff0c;為中國共產黨提供了認識世界的方法論。今天&#xff0c;這兩部著作正成為企業破解管理困局的“思維操作系統”&#xff1a; 戰略模糊&#xff1a;據Gartner統…

云原生--基礎篇-2--云計算概述(云計算是云原生的基礎,IaaS、PaaS和SaaS服務模型)

1、云計算概念 云計算是一種通過互聯網提供計算資源&#xff08;包括服務器、存儲、數據庫、網絡、軟件等&#xff09;和服務的技術模式。用戶無需擁有和維護物理硬件&#xff0c;而是可以根據需要租用這些資源&#xff0c;并按使用量付費。 2、云計算特點 &#xff08;1&am…

一級濾波器設計:IL_cmdm > 80dB

目錄 背景 目的 操作 仿真測試 搭建仿真模型 插入損耗測試 優化設計后重新測試 思考 背景 在選購共模電感時&#xff0c;規格書中通常會提供插損曲線或者阻抗-頻率曲線&#xff0c;但這些數據都是在特定條件下測試獲得的。如果將其集中在我們的樣機中性能會如何&#…

qt 配置 mysql 驅動問題:Cannot load library qsqlmysql;QMYSQL driver not loaded

項目場景&#xff1a; 環境版本&#xff1a; qt &#xff1a;5.14.2 mysql&#xff1a;8.0 windows&#xff1a;10 提示&#xff1a;qt 配置 mysql 驅動&#xff1a; 項目場景&#xff1a;qt 配置 mysql 驅動 問題描述 提示&#xff1a;這里描述項目中遇到的問題&#xff1a;…

Kubernetes相關的名詞解釋Container(16)

什么是Container&#xff1f; 在 Kubernetes 中&#xff0c;Container&#xff08;容器&#xff09; 是一個核心概念&#xff0c;你可以將鏡像&#xff08;Image&#xff09;類比為程序的“源代碼”&#xff0c;而容器是這段“代碼”運行時的進程。例如&#xff0c;一個 nginx…

學習設計模式《四》——單例模式

一、基礎概念 單例模式的本質【控制實例數目】&#xff1b; 單例模式的定義&#xff1a;是用來保證這個類在運行期間只會被創建一個類實例&#xff1b;單例模式還提供了一個全局唯一訪問這個類實例的訪問點&#xff08;即GetInstance方法&#xff09;單例模式只關心類實例的創建…

零基礎上手Python數據分析 (19):Matplotlib 高級圖表定制 - 精雕細琢,讓你的圖表脫穎而出!

寫在前面 —— 超越默認樣式,掌握 Matplotlib 精細控制,打造專業級可視化圖表 上一篇博客,我們學習了 Matplotlib 的基礎繪圖功能,掌握了如何繪制常見的折線圖、柱狀圖、散點圖和餅圖,并進行了基本的圖表元素定制,例如添加標題、標簽、圖例等。 這些基礎技能已經能讓我…

信奧中的數學

信奧賽的數學大綱 ps:知識點是其他小伙伴分享的&#xff0c;我現在在做一下系列視頻 會逐步更新&#xff0c;希望大家支持喜歡。 1.基礎數學 數論 整數和自然數 素數、合數和因數分解 最大公約數(GCD)和最小公倍數(LCM) 同余和取模運算 歐幾里得算法 擴展歐幾里得算法 中國…

PHP騰訊云人臉核身獲取Access Token

參考騰訊云官方文檔&#xff1a; 人臉核身 獲取 Access Token_騰訊云 public function getAccessToken(){$data [appId > , //WBappid,https://cloud.tencent.com/document/product/1007/49634secret > ,grant_type > client_credential, //授權類型version > 1…

《作用域大冒險:從閉包到內存泄漏的終極探索》

“愛自有天意&#xff0c;天有道自不會讓有情人分離” 大家好&#xff0c;關于閉包問題其實實際上是js作用域的問題&#xff0c;那么js有幾種作用域呢&#xff1f; 作用域類型關鍵字/場景作用域范圍示例全局作用域var&#xff08;無聲明&#xff09;整個程序var x 10;函數作用…

為什么Makefile中的clean需要.PHONY

原因一&#xff1a;避免Makefile檢查時間戳 前置知識&#xff1a;makefile在依賴文件沒有改變時不會執行編譯命令 #第一次執行&#xff0c;OK [rootVM-16-14-centos ~]# make g -E main.cc -o main.i g -S main.i -o main.s g -c main.s -o main.o g main.o -o main#第二…

垂直行業突圍:工業軟件在汽車、航空領域的 “破壁” 實踐

在當今科技高速發展的時代&#xff0c;工業軟件已悄然完成從通用工具到垂直行業 “戰略武器” 的蛻變。特別是在汽車與航空這兩大高端制造領域&#xff0c;工業軟件的價值早已超越單純的效率提升&#xff0c;成為關乎核心技術自主可控的關鍵要素&#xff0c;一場圍繞工業軟件的…

07.Python代碼NumPy-排序sort,argsort,lexsort

07.Python代碼NumPy-排序sort&#xff0c;argsort&#xff0c;lexsort 提示&#xff1a;幫幫志會陸續更新非常多的IT技術知識&#xff0c;希望分享的內容對您有用。本章分享的是NumPy的使用語法。前后每一小節的內容是存在的有&#xff1a;學習and理解的關聯性&#xff0c;希望…

LVDS系列8:Xilinx 7系可編程輸入延遲(一)

在解析LVDS信號時&#xff0c;十分重要的一環就是LVDS輸入信號線在經過PCB輸入到FPGA中后&#xff0c;本來該嚴格對齊的信號線會出現時延&#xff0c;所以需要在FPGA內部對其進行延時對齊后再進行解析。 Xilinx 7系器件中用于輸入信號延時的組件為IDELAYE2可編程原語&#xff0…

AI驅動研發效率在中后臺的實踐

本文探討了AI驅動的中后臺前端研發實踐&#xff0c; 涵蓋設計出碼、接口定義轉換、代碼擬合、自動化測試等多個環節&#xff0c;通過具體案例展示了AI技術如何優化研發流程并提升效率。特別是在UI代碼編寫和接口聯調階段&#xff0c;并提出了設計出碼&#xff08;Design to Cod…

【Rust 精進之路之第6篇-流程之舞】控制流:`if/else`, `loop`, `while`, `for` 與模式匹配初窺

系列: Rust 精進之路:構建可靠、高效軟件的底層邏輯 作者: 碼覺客 發布日期: 2025-04-20 引言:讓代碼“活”起來——指令的流動 在前面的文章中,我們已經掌握了 Rust 的基礎數據類型(標量和復合類型)以及如何通過變量綁定來存儲和命名它們。這相當于我們準備好了程序…

C++ 表達式求值的基礎(四十九)

1. 運算符的分類 1.1 按操作數個數 一元運算符&#xff08;Unary&#xff09; 作用于單個操作數&#xff1a; 取地址 &obj解引用 *ptr邏輯非 !b一元加減 x, -x遞增遞減 i, i-- 二元運算符&#xff08;Binary&#xff09; 作用于兩個操作數&#xff1a; 算術運算 a b, a …

Three.js + React 實戰系列 : 從零搭建 3D 個人主頁

可能你對tailiwindcss毫不了解&#xff0c;別緊張&#xff0c;記住我們只是在學習&#xff0c;學習的是作者的思想和技巧&#xff0c;并不是某一行代碼。 在之前的幾篇文章中&#xff0c;我們已經熟悉了 Three.js 的基本用法&#xff0c;并通過 react-three-fiber 快速構建了一…

Kotlin實現Android應用保活方案

Kotlin實現Android應用保活優化方案 以下的Android應用保活實現方案&#xff0c;更加符合現代Android開發規范&#xff0c;同時平衡系統限制和用戶體驗。 1. 前臺服務方案 class OptimizedForegroundService : Service() {private val notificationId 1private val channel…

windows拷貝文件腳本

1、新建腳本文件xxx.bat&#xff0c;名字任意&#xff0c;后綴未.bat即可&#xff0c;將以下內容拷貝進去&#xff0c;修改src和des為自己文件的目錄即可。 echo off :: 設置字符集為UTF-8&#xff0c;命令窗口能正確顯示中文字符。 chcp 65001 rem 讀取當前目錄并進入當前目…