当前位置: 首页 > news >正文

工具分享:彻底解决Docker拉取慢/超时,解放双手!自动测速优选配置镜像源 代理切换脚本

背景与痛点

在国内使用 Docker,网络问题一直是初学docker小白的恶梦:

  1. docker pull龟速:配置了几个国内加速器,但不知道哪个快,或者几天后突然全部失效。
  2. docker search报错:搜索镜像时直接提示超时,或者需要拉取gcr.io等被墙仓库的镜像。
  3. 配置繁琐:每次换源或换代理都要手动编辑daemon.jsonhttp-proxy.conf,还要手动重启服务,不仅麻烦还容易写错 JSON 格式。

为了解决这些问题,我(AI)编写了一套Shell 脚本工具箱并开源在 GitHub 上。它包含两个核心脚本,分别用于镜像源自动优选配置代理一键切换

项目地址

GitHub 仓库:https://github.com/hzhsec/docker_proxy

如果觉得好用,欢迎点个 Star ⭐️ 支持一下!

仓库里面有我淘遍各大社区网站搜集的当前可用的镜像源

工具介绍

1. 镜像源自动测速+配置tool (update_mirrors.sh)

单纯的复制粘贴一堆镜像源进去是没有用的,坏的源只会拖慢 Docker 的响应速度。这个脚本能帮你“优中选优”。

核心功能:

  • 外部配置:读取同目录下的mirrors.txt,无需修改脚本代码。
  • 并发测速:自动测试所有源的连通性和响应时间。
  • 自动配置:自动将有效的源按速度从快到慢排序,写入 Docker 配置并重启服务。
  • 维护友好: 脚本运行结束后,会专门列出连接失败的 URL,方便你直接去配置文件里删除坏掉的源。

运行效果预览:

Testing https://docker.1ms.run... [OK] 120ms Testing https://docker.xuanyuan.me... [OK] 450ms ... ✅ 已配置的有效镜像源 (按速度排序): - https://docker.m.daocloud.io (89ms) - https://docker.1ms.run (120ms) ⚠️ 以下镜像源连接失败 (建议删除): https://bad-mirror.example.com

2. Docker 代理管理工具 (docker_proxy.sh)

当所有国内源都失效,或者必须直连 Docker Hub 时,这个脚本能让你通过代理“满血复活”。(当然要自己准备代理)
核心功能:

  • 交互式菜单:小白式操作,按数字键即可开启/关闭代理。
  • 连通性预检:在应用代理前,自动测试该节点是否能连通外网(Google),防止配置无效代理。
  • 命令行模式:支持script.sh offscript.sh 1快速操作,适合集成到自动化流程。
  • 备注支持:配置文件支持#注释和备注,清楚知道每个节点的用途。

运行效果预览:



使用指南

第一步:克隆仓库

首先,将工具下载到你的服务器或本地 Linux 环境:

gitclone https://github.com/hzhsec/docker_proxy.gitcddocker_proxychmod+x *.sh

第二步:配置镜像源与代理

在仓库目录中,你可以看到两个示例配置文件(或者手动创建):

  1. mirrors.txt(用于测速脚本)

    https://docker.1ms.run https://docker.xuanyuan.me # 可以用 # 注释掉不想测的
  2. proxies.txt(用于代理脚本)

    http://127.0.0.1:7890 # 本地 Clash socks5://192.168.1.5:1080 # 局域网节点

第三步:开始使用

一:使用国内源下载镜像-推荐
运行:

sudo./docker_yuan.sh

等待脚本跑完,它会自动帮你把最快的源填好并重启 Docker。记得看一眼最后的“失败列表”,把坏的源删掉(mirrors.txt的排序已经变化了)。

二:国内源都挂了,只能代理了
运行:

sudo./docker_proxy.sh

选择你的代理节点即可。如果需要关闭,选择0即可一键还原直连模式。


总结

这两个脚本可以解决大部分docker小白在开发过程中遇到的网络问题,当然也许还有其他方法或者这个脚本也其他的无法解决的问题,也可以在评论区互相学习帮助。

如果有什么好用的镜像源,请务必告诉我,可以发在评论区

项目传送门:https://github.com/hzhsec/docker_proxy

http://www.jsqmd.com/news/84836/

相关文章:

  • CS配合CrossC2插件,实现MacOS/Linux上线
  • 1、掌握 Puppet 4:高效管理 IT 基础设施的秘诀
  • 无需运动恢复结构(SfM)的层级训练三维高斯溅射(3D Gaussian Splatting)
  • 2、初探Puppet清单编写
  • 3、编写首个Puppet清单指南
  • 前端工程师必看:AI+前端+A/B测试 实战指南(小白友好版)
  • 4、Puppet 入门:从基础使用到主从架构搭建
  • Notepad++紧急更新,且是两个版本,究竟修复了什么
  • 5、Puppet 主节点与代理节点:全流程解析与性能优化
  • 6、深入探究 Puppet:Facts、Types 与 Providers 详解
  • C51_HC-05蓝牙通信
  • 7、Puppet资源类型与模块:深入剖析与实践应用
  • 8、利用类和自定义类型模块化清单
  • 网络融合
  • 9、深入理解 Puppet 中的类、定义类型和模块
  • 10、Puppet 模块:结构、管理与实践指南
  • 智源Emu3.5震撼登场:AI首次实现物理世界统一认知,开启多模态交互新纪元
  • 利用sklearn进行pca降维
  • VS-CODE 里的github copilot 不支持自己配置模型api
  • 图像分割
  • Easy Holden Key Programming: Lonsdor K518 Pro FCV License Activation for Mechanics Owners
  • 线性代数(五)向量空间与子空间
  • 大模型学习基础(五) 强化学习(Reinforcement Learning,RL)初步
  • REST--GCA
  • linux查看内存
  • SPM设置原点
  • 30亿参数引爆企业智能升级:IBM Granite-4.0微型混合模型如何重构本地化AI部署生态
  • Qwen3-VL多模态大模型全解析:技术突破、部署实践与行业应用指南
  • 27 岁从传统行业裸辞转网络安全,我是如何做到的?
  • 腾讯开源双引擎AI模型:混元3D开创多模态创作新纪元,千倍效率革命重塑数字内容生产