Skip to content

docker 镜像加速器

国内各大云服务商(腾讯云、阿里云、百度云等)均提供了 Docker 镜像加速服务,建议根据运行 Docker 的云平台选择对应的镜像加速服务。

例如:

镜像源配置

目前主流 Linux 发行版均已使用 systemd 进行服务管理,这里介绍如何在使用 systemd 的 Linux 发行版中配置镜像加速器。

请首先执行以下命令,查看是否在 docker.service 文件中配置过镜像地址。

sh
systemctl cat docker | grep '\-\-registry\-mirror'

如果该命令有输出,那么请执行 systemctl cat docker 查看 ExecStart= 出现的位置,修改对应的文件内容去掉 --registry-mirror 参数及其值,并按接下来的步骤进行配置。

如果以上命令没有任何输出,那么就可以在 /etc/docker/daemon.json 中写入如下内容(如果文件不存在请新建该文件):

json
{
  "registry-mirrors": [
    "https://mirror.ccs.tencentyun.com",
    "https://mirror.baidubce.com"
  ],
  "insecure-registries":[
    "http://hub-mirror.c.163.com"
  ]
}

注意

可以添加多个源 以防止其中一个宕机 一定要保证该文件符合 json 规范,否则 Docker 将不能启动。

Docker从1.3.X之后,与docker registry交互默认使用的是https,然而此处搭建的私有仓库只提供http服务,所以当与私有仓库交互式就会有错误。http服务则需要填写到insecure-registries下面。

重新启动服务。

sh
sudo systemctl daemon-reload
sudo systemctl restart docker

检查加速器是否生效

执行 docker info,如果从结果中看到了如下内容,说明配置成功。

sh
Registry Mirrors:
http://hub-mirror.c.163.com

使用docker pull命令拉取软件,只要能够正常拉取就是有效的,否则就是无效的。

sh
docker pull dockerproxy.com/library/nginx:latest
docker pull hub-mirror.c.163.com/library/nginx:latest
docker pull mirror.baidubce.com/library/nginx:latest

使用time进行测速

sh
time docker pull nginx:latest

Site developed by Aomd.