修改Docker Hub为国内镜像源

安装Docker/Docker Desktop后,其registry server是默认指向https://hub.docker.com的。因众所周知的远呀,在国内该hub源访问速度异常慢,为了解决这个问题,一些国内的公司和组织提供了 Docker 镜像的国内镜像源,

Docker Hub 镜像源

提供商公共镜像私有镜像
网易云hub-mirror.c.163.com
百度云mirror.baidubce.com
腾讯云ccr.ccs.tencentyun.com
Docker Proxydockerproxy.com
华为云你的ID.mirror.swr.myhuaweicloud.comhttps://{你的ID}.mirror.swr.myhuaweicloud.com
阿里云你的ID.mirror.aliyuncs.comhttp://{你的ID}.mirror.aliyuncs.com

PS.阿里云需要自行创建专属镜像仓库https://cr.console.aliyun.com/

修改配置

修改daemon.json,增加或者修改以下配置:

{
  "registry-mirrors": [
    "https://dockerproxy.com",
    "https://hub-mirror.c.163.com",
    "https://mirror.baidubce.com",
    "https://ccr.ccs.tencentyun.com"
  ]
}

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

配置文件所在位置:

  • Linux: /etc/docker/daemon.json
  • Windows: %USERPROFILE%\.docker\daemon.json 或者 %programdata%\Docker\config\daemon.json
  • MacOS: ~/.docker/daemon.json

如果使用的Docker Desktop,只需要在配置界面找到Docker Engine选项,修改之后然后点击Apply & Restart按钮,即可生效。在此修改等同于直接修改daemon.json文件。

检查配置是否生效

输入以下命令:

docker info

如果从结果中看到了如下类似的内容,说明配置成功:

Registry Mirrors:
 https://hub-mirror.c.163.com/

测试源镜像是否有效

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

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
docker pull ccr.ccs.tencentyun.com/library/nginx:latest
docker pull 1nj0zren.mirror.aliyuncs.com/library/nginx:latest
docker pull 05f073ad3c0010ea0f4bc00b7105ec20.mirror.swr.myhuaweicloud.com/library/nginx:latest

源镜像测速

Linux

在Linux下面有time命令,可以使用该命令对源进行测速:

time docker pull nginx:latest

测速结果大致如下:

real   1m14.078s
user   0m0.176s
sys    0m0.120s

Windows

在Windows的PowerShell下面可以使用以下命令测速:

Measure-Command {docker pull nginx:latest | Out-Default}

测速结果大致如下:

Days              : 0
Hours             : 0
Minutes           : 0
Seconds           : 4
Milliseconds      : 217
Ticks             : 42174202
TotalDays         : 4.88127337962963E-05
TotalHours        : 0.00117150561111111
TotalMinutes      : 0.0702903366666667
TotalSeconds      : 4.2174202
TotalMilliseconds : 4217.4202
添加新评论