Docker 镜像加速器配置:适用范围与拉取验证
本文适用于使用 systemd 管理的 Linux Docker Engine。Docker Desktop 应在自己的 Docker Engine 设置中修改配置;rootless Docker 的配置位置和服务管理方式也不同。
截至 2026-10-24 核对官方说明:
- 中科大容器镜像缓存已暂停服务;
https://mirrors.ustc.edu.cn也不是可用的 Docker registry 地址。 - 阿里云 Docker Hub 加速器已停止同步最新镜像,服务仅限个人开发场景,不适合作为生产环境的持续供应来源。账户可用入口以控制台和官方限制为准。
- 旧教程中的个人 DaoCloud 地址不应直接复用。其他服务需根据提供方的当前文档确认权限、覆盖仓库和使用方式。
registry-mirrors 主要用于 Docker Hub,不会自动加速所有镜像仓库。生产环境可按组织要求使用可控的镜像仓库与固定版本或摘要。
创建或检查配置文件
bash
sudo mkdir -p /etc/docker
sudoedit /etc/docker/daemon.json已有文件时先备份并检查内容,将下面的字段合并到现有 JSON 对象中,保留其他配置;不要用整段示例覆盖已有设置。
配置可用的加速地址
下面仅展示格式。把占位地址替换为自己账户当前获准使用的完整 HTTPS 地址后保存,不要原样复制占位符:
json
{
"registry-mirrors": ["https://<your_unique_key>.mirror.aliyuncs.com"]
}同一 JSON 对象中不要重复写 registry-mirrors 键。若没有可用服务,无需添加这一项。
检查配置并重启 Docker
先检查配置语法,成功后在可以中断容器服务的时间重启:
bash
sudo dockerd --validate --config-file=/etc/docker/daemon.json &&
sudo systemctl restart docker &&
sudo systemctl status docker --no-pager若校验失败,先修复 JSON 或不支持的配置项;不要继续重启。重启可能影响正在运行的容器,启动失败时检查 journalctl -u docker。
验证配置
bash
docker info --format '{{json .RegistryConfig.Mirrors}}'
docker pull hello-world:latest第一项只证明 daemon 读取了配置。第二项用于检查此次镜像拉取是否成功;成功也可能来自回退到 Docker Hub,不能单凭结果断定镜像站命中。失败时结合错误信息区分 DNS、连接、权限、限流与镜像未同步问题。