問題背景
在使用 Docker 時,你是否遇到過以下報錯?
Unable to find image ‘mysql:latest’ locally
docker: Error response from daemon: Get “https://registry-1.docker.io/v2/”: dial tcp 128.242.250.155:443: i/o timeout.
這類問題通常是由于 Docker 默認的國外鏡像源訪問不穩定或速度過慢導致的。本文將手把手教你在 Windows 系統下配置 Docker 鏡像加速源,徹底解決拉取鏡像失敗的問題!
解決方案
方法 1:通過 Docker Desktop 圖形界面配置(推薦)
適合人群: 新手用戶,偏好可視化操作
操作步驟:
打開 Docker Desktop 設置
右鍵點擊任務欄右下角的 Docker 鯨魚圖標,選擇 Settings。
或直接打開 Docker Desktop,點擊右上角齒輪圖標進入設置界面。
!https://via.placeholder.com/600x300?text=Docker+Desktop+Settings
配置鏡像加速源
在左側菜單中選擇 Docker Engine 標簽頁。
在右側的 JSON 配置框中,找到或添加 registry-mirrors 字段,填入以下國內鏡像源(任選其一或多個):
"registry-mirrors": ["https://hub-mirror.c.163.com", // 網易鏡像"https://mirror.baidubce.com", // 百度鏡像"https://docker.mirrors.ustc.edu.cn", // 中科大鏡像"https://docker.nju.edu.cn" // 南京大學鏡像
}
保存并重啟 Docker
點擊右下角 Apply & Restart,等待 Docker 服務重啟完成。
方法 2:手動修改配置文件
適合人群: 熟悉命令行操作或 Docker Desktop 不可用的情況
操作步驟:
定位配置文件路徑
Windows 系統的 Docker 配置文件路徑為:
%USERPROFILE%.docker\daemon.json
按下 Win + R,輸入 %USERPROFILE%.docker 回車,快速打開文件夾。
編輯配置文件
使用文本編輯器(如 VS Code、Notepad++)打開 daemon.json 文件。
輸入以下內容(若文件已存在,僅添加 registry-mirrors 字段):
"registry-mirrors": ["https://dockerproxy.com","https://docker.mirrors.sjtug.sjtu.edu.cn","https://mirror.aliyuncs.com" // 阿里云鏡像(需替換為專屬地址)
}
阿里云用戶注意:需前往 https://cr.console.aliyun.com/ 申請專屬加速地址。
重啟 Docker 服務
右鍵點擊任務欄 Docker 圖標,選擇 Restart。
驗證配置是否生效
打開 PowerShell 或 CMD,執行命令:
docker info
在輸出信息中查找 Registry Mirrors,確認已列出配置的鏡像源地址。
!https://via.placeholder.com/600x200?text=Registry+Mirrors+Output
測試拉取鏡像
重新運行拉取命令(以 MySQL 為例):
docker run -d --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123 mysql:latest
此時鏡像應能正常下載,且速度顯著提升!
常見問題排查
鏡像源失效
嘗試更換其他鏡像源(推薦優先使用中科大、南京大學鏡像)。
阿里云鏡像需使用https://cr.console.aliyun.com/。
網絡或防火墻攔截
暫時關閉防火墻或 VPN 軟件。
檢查 DNS 設置(如改為 8.8.8.8 或 114.114.114.114)。
Docker 服務未正常啟動
重啟 Docker Desktop 或執行命令:
net stop com.docker.servicenet start com.docker.service