首页 > 其他 > 详细

如何让Docker镜像飞起来

时间:2021-05-25 16:53:21      阅读:19      评论:0      收藏:0      [点我收藏+]

前言

Docker用起来非常爽,尤其是用于DevOps实践时。但是,当你在国内或者本地拉取镜像时,经常会碰到各种“便秘”——要么镜像拉取缓慢,要么时断时连,要么连接超时!

技术分享图片

当我们的镜像又比较大时(比如某人在代码里面丢了个魔兽争霸的包),这简直是一个噩梦!那么如何解决这个问题?接下来我们就主要从以下几个方面来解决这个问题:

  • 使用镜像加速器
  • 换源
  • 自己做镜像推送到国内仓库
  • 自己搭建就近镜像仓库
  • 最后的绝招(保密)

技术分享图片

镜像加速器

玩网游卡都可以祭出加速器,镜像拉取通用有相关的加速器。国内的云厂商基本上都提供了镜像加速器:

Docker Hub 镜像加速器列表

镜像加速器 镜像加速器地址 专属加速器 其它加速
Docker 中国官方镜像 https://registry.docker-cn.com ? Docker Hub
DaoCloud 镜像站 http://f1361db2.m.daocloud.io 可登录,系统分配 Docker Hub
Azure 中国镜像 https://dockerhub.azk8s.cn ? Docker Hub、GCR、Quay
科大镜像站 https://docker.mirrors.ustc.edu.cn ? Docker Hub、GCRQuay
阿里云 https://.mirror.aliyuncs.com 需登录,系统分配 Docker Hub
七牛云 https://reg-mirror.qiniu.com ? Docker Hub、GCR、Quay
网易云 https://hub-mirror.c.163.com ? Docker Hub
腾讯云 https://mirror.ccs.tencentyun.com ? Docker Hub

如何使用镜像加速器呢?

Docker Hub 镜像加速器配置

Linux系统可以执行以下Shell:

技术分享图片

配置了之后,可以通过“docker info”命令来查看是否生效:
技术分享图片

如果是Windows 10呢?可以在如下图所示的界面处配置:

技术分享图片

换源

加速器用起来非常爽,但是很多时候某些镜像就算是配置了加速器也不好使(可能和加速器的国际带宽有关系),这个时候就必须换源了。毕竟加速器不是万能的,尤其是当你的镜像比较大的时候。这时候你就要找合适的源了。

比如.NET Core 的SDK镜像,我们可以统一使用Azure中国的镜像源,如下表所示,我们看到“mcr.microsoft.com”在国内对应的代理为“mcr.azk8s.cn”:

global proxy in China format example
dockerhub (docker.io) dockerhub.azk8s.cn dockerhub.azk8s.cn//: dockerhub.azk8s.cn/microsoft/azure-cli:2.0.61 dockerhub.azk8s.cn/library/nginx:1.15
gcr.io gcr.azk8s.cn gcr.azk8s.cn//: gcr.azk8s.cn/google_containers/hyperkube-amd64:v1.13.5
quay.io quay.azk8s.cn quay.azk8s.cn//: quay.azk8s.cn/deis/go-dev:v1.10.0
mcr.microsoft.com mcr.azk8s.cn mcr.azk8s.cn//: mcr.azk8s.cn/oss/kubernetes/hyperkube:v1.15.7

因此,我们可以使用“mcr.azk8s.cn”来替代官方提供的“mcr.microsoft.com”源:

# docker pull  mcr.microsoft.com/dotnet/core/sdk:2.2-stretch
docker pull mcr.azk8s.cn/dotnet/core/sdk:2.2-stretch

如何让Docker镜像飞起来

原文:https://blog.51cto.com/u_14180063/2811989

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!