Docker換源加速(更換鏡像源)詳細教程(2025.3最新可用鏡像,全網最詳細)

文章目錄

  • 前言
  • 可用鏡像源匯總
  • 換源方法1-臨時換源
  • 換源方法2-永久換源(推薦)
  • 常見問題及對應解決方案
    • 1.換源后,可以成功pull,但是search會出錯
  • 補充
    • 1.如何測試鏡像源是否可用
    • 2.Docker內的Linux換源教程
  • 換源速通版(可以直接無腦復制粘貼)

前言


??? 如果您對這篇文章感興趣,可以點擊【導航頁 - 訪客必讀】一文囊括主頁所有優質博客 查看更多優質內容,希望可以幫您解決更多問題~。 ???


由于各種網絡政策,在國內訪問DockerHub速度會非常緩慢,大家一般都會采取更換鏡像源的方式來進行加速。

但是,2024.6之后,由于政策的加強,大部分常見的鏡像源已經無法使用,如下圖:

在這里插入圖片描述

因此,筆者通過各種途徑搜集了目前可用的鏡像源,給出了詳細的換源步驟以及鏡像源匯總列表,并將定期進行測試與更新 ! (文末也給出了換源的速通版)

對于不同的系統,本文使用到的對應命令可能不同,需要大家結合具體的系統來進行操作,博客有任何錯誤或者大家有任何問題,都可以直接在評論區留言~
本篇文章以Ubuntu22.04為例,如果您需要其他系統的換源教程,可以私信留言,我將盡可能為您更新相應系統換源的教程!

如果我的博客成功解決了您的問題,煩請一件三連 (),不勝感激!

可用鏡像源匯總

下列信息收集于互聯網,并非筆者本人搭建,所以無法保證一直有效,建議同時配置多個鏡像源。
有些鏡像源鏡像不全或者只允許內部訪問,所以如果某個鏡像源無法拉取到您所需的鏡像,更換另一個即可。

截止2025.3.16,下列鏡像源均可用。(基于能否成功拉取hello-world進行測試)

DockerHub可用鏡像源匯總
docker.m.daocloud.io
docker.imgdb.de
docker-0.unsee.tech
docker.hlmirror.com
docker.1ms.run
func.ink
lispy.org
docker.xiaogenban1993.com

注:據網友反映,阿里云鏡像站的鏡像未同步最新鏡像源,即部分鏡像拉取不到最新版,故不再寫在匯總表中

換源方法1-臨時換源

格式如下:(不要加上前綴https://

sudo docker pull+鏡像源地址+/+要拉取的鏡像名

例如:

鏡像源為“docker.m.daocloud.io”,要拉取的鏡像名為“hello-world”,

sudo docker pull docker.m.daocloud.io/hello-world

成功拉取,如下圖:
在這里插入圖片描述

注意:此方法每次拉取鏡像時都需要指定相應的鏡像源

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

核心思想:修改docker的配置文件 daemon.json,將鏡像源地址寫入其中。

以ubuntu22.04為例,其余操作系統同理

  1. 創建目錄(如果已經有該目錄,則忽略此步驟)
sudo mkdir -p /etc/docker

知識點補充:添加“-p”,執行此命令會先檢查目錄是否存在。若不存在,則創建相應目錄;否則,不執行任何操作。因此不管是否有該目錄,直接執行此命令都沒問題,不會報錯

  1. 向配置文件寫入鏡像源

格式如下:(需要加上前綴https://

{"registry-mirrors": ["鏡像源1","鏡像源2"]
}

例如,根據2025.3.16最新測試的可用鏡像源,我在此給出命令行文本編輯器兩種操作方法。

特別提醒,不管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

知識點補充:<<-'EOF' 告訴 shell 接下來的所有內容會被傳遞到命令 tee,直到遇到標記 EOF 為止,用于將多行內容作為輸入傳遞給命令。所以不需要擔心輸入一行之后系統就開始執行命令 此外,若daemon.json文件不存在,直接使用tee命令不會報錯,而是會創建名為daemon.json的文件

  • 方法二:通過文本編輯器打開daemon.json,然后粘貼

首先打開配置文件:

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"]
}

知識點補充:若daemon.json文件不存在,直接使用nano命令不會報錯,而是會創建名為daemon.json的文件

  1. 重啟docker服務
sudo systemctl daemon-reload && sudo systemctl restart docker
  1. 驗證
sudo docker pull hello-world

出現下圖,即為成功!

在這里插入圖片描述

常見問題及對應解決方案

歡迎大家將自己遇到的問題回復在評論區中,我會積極解答并將其補充到博客中,大家共同進步!

1.換源后,可以成功pull,但是search會出錯

報錯如下圖:
在這里插入圖片描述

先說結論:截止目前,除非科學上網(掛梯子),不然無法解決此問題

  • 目前由于國內政策限制,國內網絡無法正常訪問DockerHub,只能借助鏡像站
  • 目前各個可用的鏡像站均是對pull操作進行了加速優化,并沒有支持search功能,所以對于search操作來說,鏡像站無效

基于上述兩點,此問題無解(除非科學上網)。

如果您有可行的解決辦法,希望您及時私信或評論,造福大家!

補充

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

我們可以直接根據 ” 換源方法1-臨時換源 “ ,通過拉取hello-world鏡像進行測試。

hello-world 鏡像是 Docker 官方提供的一個最基礎的鏡像,用來測試 Docker 是否正常工作。無論你更換了哪個鏡像倉庫,hello-world 鏡像都可以作為最基本的測試。

但是需要注意,hello-world 鏡像是否可以正常拉取與鏡像源是否可用并不是完全對應的
某些特殊的鏡像源可能并不支持hello-world ,但支持某些其他鏡像。不過這是極少數的,

因此,通過hello-world 鏡像是否可以正常拉取來判斷鏡像源是否可用,這是充分條件,而不是必要條件。

失敗拉取如下圖:
在這里插入圖片描述
成功拉取如下圖:
在這里插入圖片描述

當然,我們也可以通過其他鏡像來判斷,例如alpinebusybox等也是比較基礎且常見的鏡像源,具體不再贅述。

2.Docker內的Linux換源教程

我們進入到Docker容器后,將是與宿主機不同的另一個Linux系統,那么如何更換Docker內Linux系統的軟件源以獲得更快的下載速度呢?

可以參考此教程。

換源速通版(可以直接無腦復制粘貼)

  1. 創建目錄
sudo mkdir -p /etc/docker
  1. 配置鏡像源
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
  1. 重啟docker服務
sudo systemctl daemon-reload && sudo systemctl restart docker
  1. 驗證
sudo docker pull hello-world

出現下圖,即為成功!

在這里插入圖片描述

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

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

相關文章

機器學習【三】SVM

本文系統介紹了支持向量機(SVM)的理論與實踐。理論部分首先區分了線性可分與不可分問題&#xff0c;闡述了SVM通過尋找最優超平面實現分類的核心思想&#xff0c;包括支持向量、間隔最大化等關鍵概念。詳細講解了硬間隔與軟間隔SVM的數學原理&#xff0c;以及核函數(線性核、多…

DevOps平臺大比拼:Gitee、Jenkins與CircleCI如何選型?

DevOps平臺大比拼&#xff1a;Gitee、Jenkins與CircleCI如何選型&#xff1f; 在數字化轉型浪潮席卷全球的當下&#xff0c;DevOps已成為企業提升研發效能的關鍵引擎。面對市場上紛繁復雜的DevOps工具鏈&#xff0c;如何選擇最適合自身業務需求的平臺成為技術決策者的重要課題。…

開源醫院信息管理系統:基于若依框架的智慧醫療解決方案

引言在數字化浪潮的推動下&#xff0c;醫療行業正加速向信息化、智能化轉型。醫院信息管理系統&#xff08;HIS&#xff09;作為醫療管理的核心工具&#xff0c;直接影響醫院的運營效率和服務質量。近期&#xff0c;一款基于 若依框架 Vue 的開源醫院管理系統&#xff08;hosp…

我的世界進階模組開發教程——附魔(2)

EnchantmentHelper 類詳解 EnchantmentHelper 是 Minecraft 中處理物品附魔邏輯的核心工具類,提供附魔的存儲、查詢、計算和應用等功能。以下是對其字段和方法的逐行詳細解釋: 關鍵字段 private static final String TAG_ENCH_ID = "id"; // NBT標簽鍵:附…

深度學習零基礎入門(4)-卷積神經網絡架構

許久不見~ 本節我們延續上一節的話題來看看卷積神經網絡的架構&#xff0c;看看具體的卷積、池化等操作卷積神經網絡詳解&#xff1a;從基礎操作到整體架構 一、卷積操作&#xff1a;特征提取的核心 卷積是卷積神經網絡&#xff08;CNN&#xff09;的核心操作&#xff0c;靈感來…

C語言的控制語句

C的控制語句 控制語句是C語言中用于控制程序執行流程的結構。通過控制語句,可以根據條件執行不同的代碼塊,或者重復執行某些操作,從而實現復雜的邏輯和功能。掌握控制語句是編寫有效和高效C程序的關鍵。 1 條件控制 條件控制語句用于根據某些條件來決定程序的執行路徑。C語…

Mac電腦基本功能快捷鍵

1. 個性化桌面 將喜愛照片添加為桌面墻紙。前往“系統設置”&#xff0c;然后點按邊欄中的“墻紙”。點按“添加照片”&#xff0c;然后從文件或“照片”App選取一張照片。 2. 截屏 按下鍵盤上的Shift &#xfffc; Command ? 5&#xff0c;然后選取捕捉整個屏幕、App窗口或…

微算法科技(NASDAQ: MLGO)開發量子邊緣檢測算法,為實時圖像處理與邊緣智能設備提供了新的解決方案

圖像邊緣檢測是計算機視覺的核心任務&#xff0c;傳統算法&#xff08;如 Sobel、Canny&#xff09;依賴梯度計算與閾值分割&#xff0c;在處理高分辨率、復雜紋理圖像時面臨計算效率瓶頸。隨著量子計算技術的發展&#xff0c;利用量子態疊加與并行處理特性&#xff0c;微算法科…

斷點續傳Demo實現

基于我們的DownloadManager.swift代碼&#xff0c;讓我詳細解釋斷點續傳需要實現的核心功能&#xff1a; 斷點續傳的核心實現要素 1. 后臺會話配置 private func setupBackgroundSession() {let config URLSessionConfiguration.background(withIdentifier: "com.test.do…

《Leetcode》-面試題-hot100-子串

題目列表 560. 和為K的子數組 中等難度 leetcode鏈接 239 滑動窗口最大值 困難難度 leetcode鏈接 76 最小覆蓋子串 困難難度 leetcode鏈接 題目 &#xff08;1&#xff09;和為K的子數組 給你一個整數數組 nums 和一個整數 k &#xff0c;請你統計并返回 該數組中和為 …

點擊彈框以外的區域關閉彈框

在 Vue 3 中&#xff0c;如果你想判斷點擊的目標是否在彈框內&#xff0c;可以通過以下步驟實現。這里我們將使用 ref 來引用彈框組件&#xff0c;并在點擊事件中進行判斷。 示例代碼 1. 創建彈框子組件 首先&#xff0c;創建一個名為 Modal.vue 的子組件。 <!-- Modal.vue …

00.Vue基礎入門【小白級別手把手!】

目錄 一、Vue介紹 二、創建Vue項目 nodeJs nvm版本管理 創建Vue項目 VS Code編輯器 三、.Vue文件結構說明 數據渲染 四、Vue項目目錄說明 main.ts文件說明 五、Vue官網文檔學習 一、Vue介紹 基礎介紹 Vue是一個前端Web框架&#xff0c;屬于單頁應用&#xff08;SPA&am…

將Varjo XR技術融入戰斗機訓練模擬器,有效提升模擬訓練沉浸感與效率

本周在Varjo總部&#xff0c;收到了一份令人興奮的禮物&#xff0c;一架由Dogfight Boss與varjo XR-4集成的訓練模擬器。這是一個專業級模擬器&#xff0c;專為高保真訓練和任務排練而設計&#xff0c;非常注重細節&#xff0c;提高了沉浸水平。為此Dogfight Boss的首席執行官L…

C# async await 實現機制詳解

一、async/await 異步編程實現機制 1.1 核心概念 async/await 是 C# 5.0 引入的語法糖&#xff0c;它基于**狀態機&#xff08;State Machine&#xff09;**模式實現&#xff0c;將異步方法轉換為編譯器生成的狀態機類。 1.2 編譯器轉換過程 當編譯器遇到 async 方法時&#xf…

Servlet 學習筆記

本文為記錄Servlet學習時的一些筆記和代碼 課程參考黑馬程序員 對于Java Web 學習的一個復習一 概述server applet 運行在服務器端的小程序 本質就是一個接口 定義java類被瀏覽器訪問到&#xff08;Tomcat識別&#xff09;的規則我們會自定義這樣一個類來實現復寫方法實現接口二…

【maven】倉庫配置

目錄 一、本地倉庫 二、私有倉庫 三、阿里云倉庫 一、本地倉庫 針對無外網、無maven私服&#xff0c;只有本地倉庫&#xff0c;進行maven項目開發。在maven的settings.xml中設置三項&#xff1a; 1、本地倉庫地址 默認在當前系統用戶下創建目錄&#xff1a;.m2/repository…

信息系統架構設計的系統性解析

一、信息系統架構設計??概念定義??&#xff1a;信息系統架構&#xff08;ISA&#xff09;是對系統組件、交互關系及環境約束的結構化抽象&#xff0c;確保業務目標與技術實現對齊。核心要素包括業務邏輯層、數據層、應用層和基礎設施層。??設計方法??&#xff1a;??T…

編譯舊版本的electron內核

我們的軟件產品使用的electron框架&#xff0c;electron框架是不斷更新的&#xff0c;但是我們的軟件太過龐大復雜&#xff0c;不敢輕易升級electron框架。Electron舊版本存在一些BUG和不合理的地方&#xff0c;需要去修復BUG或者不合理的地方。修復完BUG后&#xff0c;要對ele…

Elastic 9.1/8.19:默認啟用 BBQ,ES|QL 支持跨集群搜索(CCS)正式版,JOINS 正式版,集成 Azure AI Foundry

作者&#xff1a;來自 Elastic Mark Doncov 今天&#xff0c;我們很高興宣布 Elastic 9.1 和 8.19 正式發布&#xff01; 是的&#xff0c;又有好消息 —— 我們將 8.x 系列最終延長到 8.19&#xff0c;這樣那些還在等待升級到 9.x 的用戶也能享受到許多新功能。 Elastic 9.1…

Redis面試精講 Day 8:Stream消息隊列設計與實現

【Redis面試精講 Day 8】Stream消息隊列設計與實現 文章標簽 Redis,消息隊列,Stream,面試技巧,分布式系統,后端開發 文章簡述 本文是"Redis面試精講"系列第8天&#xff0c;聚焦Redis 5.0引入的Stream消息隊列。文章深入解析Stream的核心概念與實現原理&#xff0…