Ubuntu 系统 Docker 镜像加速

在 Ubuntu 上使用 Docker 时,默认从官方仓库拉取镜像经常会遇到速度慢、超时失败等问题。核心原因是官方镜像源在海外,网络链路不稳定。本文将详细介绍如何通过配置国内镜像加速器,解决 Docker 镜像拉取慢的问题,同时附上完整实操步骤,新手也能轻松上手。

一、前置条件

  1. 已在 Ubuntu 系统安装 Docker(若未安装,可参考 Docker 官方文档:Ubuntu 安装 Docker Engine
  2. 拥有 sudo 权限(配置系统文件需管理员权限)
  3. 网络通畅(能访问国内镜像源服务器)

二、选择可靠的国内镜像加速器

国内有多个免费的 Docker 镜像加速器,覆盖不同地区和运营商,建议多配置几个以提高稳定性(Docker 会自动选择可用的镜像源)。以下是经过实测可用的镜像源列表:

json 复制代码
{
  "registry-mirrors": [
    "https://a88uijg4.mirror.aliyuncs.com",  // 阿里云镜像(推荐)
    "https://docker.lmirror.top",            // 开源镜像站
    "https://docker.m.daocloud.io",          //  DaoCloud 镜像
    "https://hub.uuuadc.top",                // 第三方优质镜像
    "https://docker.anyhub.us.kg",           // 海外中转镜像(适合部分地区)
    "https://dockerhub.jobcher.com",         // 专注 Docker Hub 加速
    "https://dockerhub.icu",                 // 轻量镜像加速器
    "https://docker.ckyl.me",                // 国内高速镜像
    "https://docker.awsl9527.cn",            // 稳定镜像源
    "https://docker.laoex.link"              // 备用镜像源
  ]
}

三、完整配置步骤

步骤 1:删除旧的配置文件(可选)

如果之前配置过 daemon.json,建议先删除旧文件避免冲突(若从未配置过,可跳过此步):

bash 复制代码
sudo rm -f /etc/docker/daemon.json

步骤 2:创建并编辑 Docker 配置文件

使用 vim 编辑 Docker 的核心配置文件 daemon.json(该文件默认不存在,会自动创建):

bash 复制代码
sudo vim /etc/docker/daemon.json

进入 vim 编辑器后,按 i 键进入编辑模式,粘贴以下配置内容(即上面的镜像源列表):

json 复制代码
{
  "registry-mirrors": [
    "https://a88uijg4.mirror.aliyuncs.com",
    "https://docker.lmirror.top",
    "https://docker.m.daocloud.io",
    "https://hub.uuuadc.top",
    "https://docker.anyhub.us.kg",
    "https://dockerhub.jobcher.com",
    "https://dockerhub.icu",
    "https://docker.ckyl.me",
    "https://docker.awsl9527.cn",
    "https://docker.laoex.link"
  ]
}

粘贴完成后,按 Esc 键退出编辑模式,输入 :wq 并回车(保存文件并退出 vim)。

步骤 3:重载配置并重启 Docker

配置文件修改后,需要重载 Docker 守护进程配置,并重启 Docker 服务使其生效:

bash 复制代码
# 重载 Docker 配置
sudo systemctl daemon-reload

# 重启 Docker 服务
sudo systemctl restart docker

步骤 4:验证配置是否生效

重启完成后,可通过以下命令验证镜像加速器是否配置成功:

bash 复制代码
docker info

在输出结果中查找 Registry Mirrors 字段,若显示为我们配置的镜像源列表,则说明配置生效:

复制代码
Registry Mirrors:
 https://a88uijg4.mirror.aliyuncs.com/
 https://docker.lmirror.top/
 https://docker.m.daocloud.io/
 ...(其余配置的镜像源)

四、测试镜像拉取速度

配置生效后,可通过拉取常用镜像(如 Nginx、Redis)测试速度是否提升:

bash 复制代码
# 拉取 Nginx 镜像
docker pull nginx

# 拉取 Redis 镜像
docker pull redis

若之前拉取需要几分钟甚至超时,配置后通常能在几十秒内完成,说明加速效果显著。

五、常见问题排查

  1. 配置后拉取仍慢

    • 检查 daemon.json 格式是否正确(JSON 语法严格,需注意逗号、引号是否遗漏)。
    • 部分镜像源可能临时不可用,可删除无效镜像源后重新配置。
    • 重启 Docker 服务后等待 1-2 分钟再测试(配置可能有延迟生效)。
  2. Docker 启动失败

    • 大概率是 daemon.json 语法错误,可通过 sudo systemctl status docker 查看错误日志。
    • 重新编辑 daemon.json,确保 JSON 格式正确(可使用 JSON 在线校验工具 验证)。
  3. 权限不足

    • 所有操作需加上 sudo(管理员权限),否则无法修改 /etc/docker 目录下的文件。

六、总结

通过配置国内 Docker 镜像加速器,能大幅提升 Ubuntu 系统下 Docker 镜像的拉取速度,解决海外源访问不稳定的问题。本文提供的镜像源列表经过实测可用,配置步骤简单易懂,适合新手快速上手。如果后续某个镜像源不可用,只需编辑 daemon.json 更新镜像源列表,重载配置并重启 Docker 即可。

如果在配置过程中遇到问题,欢迎在评论区留言交流~

相关推荐
AI云原生1 小时前
Docker部署多个Python项目如何使用Nginx实现负载均衡的解决方案
python·nginx·docker·云原生·容器·kubernetes·负载均衡
s***38561 小时前
docker中配置redis
redis·docker·容器
张世争1 小时前
ubuntu 使用 cmake 方式源码编译 SDL2
ubuntu·源码编译·sdl2
v***8571 小时前
Java进阶-在Ubuntu上部署SpringBoot应用
java·spring boot·ubuntu
蒲公英源码1 小时前
基于Linux+Nginx+PHP+MySQL的命理测算系统
linux·nginx·php
h***06651 小时前
docker 安装 mysql
mysql·adb·docker
豆浆whisky1 小时前
构建可观测的Go应用:指标、日志与追踪的统一之道|Go语言进阶(21)
linux·运维·后端·golang
TeleostNaCl1 小时前
Docker | 如何限制容器的 CPU/内存/磁盘IO 的资源利用以降低性能消耗
运维·经验分享·嵌入式硬件·docker·容器·智能路由器
杨浦老苏1 小时前
邮件归档与全文检索利器Bichon
docker·全文检索·群晖·邮件·email