在 Ubuntu 上使用 Docker 时,默认从官方仓库拉取镜像经常会遇到速度慢、超时失败等问题。核心原因是官方镜像源在海外,网络链路不稳定。本文将详细介绍如何通过配置国内镜像加速器,解决 Docker 镜像拉取慢的问题,同时附上完整实操步骤,新手也能轻松上手。
一、前置条件
- 已在 Ubuntu 系统安装 Docker(若未安装,可参考 Docker 官方文档:Ubuntu 安装 Docker Engine)
- 拥有 sudo 权限(配置系统文件需管理员权限)
- 网络通畅(能访问国内镜像源服务器)
二、选择可靠的国内镜像加速器
国内有多个免费的 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
若之前拉取需要几分钟甚至超时,配置后通常能在几十秒内完成,说明加速效果显著。
五、常见问题排查
-
配置后拉取仍慢:
- 检查
daemon.json格式是否正确(JSON 语法严格,需注意逗号、引号是否遗漏)。 - 部分镜像源可能临时不可用,可删除无效镜像源后重新配置。
- 重启 Docker 服务后等待 1-2 分钟再测试(配置可能有延迟生效)。
- 检查
-
Docker 启动失败:
- 大概率是
daemon.json语法错误,可通过sudo systemctl status docker查看错误日志。 - 重新编辑
daemon.json,确保 JSON 格式正确(可使用 JSON 在线校验工具 验证)。
- 大概率是
-
权限不足:
- 所有操作需加上
sudo(管理员权限),否则无法修改/etc/docker目录下的文件。
- 所有操作需加上
六、总结
通过配置国内 Docker 镜像加速器,能大幅提升 Ubuntu 系统下 Docker 镜像的拉取速度,解决海外源访问不稳定的问题。本文提供的镜像源列表经过实测可用,配置步骤简单易懂,适合新手快速上手。如果后续某个镜像源不可用,只需编辑 daemon.json 更新镜像源列表,重载配置并重启 Docker 即可。
如果在配置过程中遇到问题,欢迎在评论区留言交流~