Docker registry 工具如今已经非常好的支持了 mirror 功能,使用它能够配置一个本地的 mirror 服务。将 pull 过的镜像 cache 在本地。这样其他主机再次 pull 的时候会极大提高响应速度。

使用 docker-compose 启动 registry mirror 服务

以 ubuntu 为例。首先要安装 docker 和 docker-compose。

安装 docker

$ sudo wget -qO- https://get.docker.com/ | sh

安装 docker-compose

$ sudo pip install docker-compose

之后,在本地创建 /opt/data/registry 文件夹,作为镜像文件的存储位置;创建 /opt/data/redis 文件夹。作为 redis 数据的存放位置。

编写一个 docker-compose.yml 文件。

该文件将启动一个 registry 容器监听在本地的 5000 port,并使用一个 redis 容器作为小文件的 cache。

内容例如以下:

# This compose file will start 2 containers: registry and redis.
# registry container will listen on host port 5000,
# and depend on the redis container as the cache scheme. registry:
image: registry:latest
cpu_shares: 10
environment:
- STANDALONE=false
- MIRROR_SOURCE=https://registry-1.docker.io
- MIRROR_SOURCE_INDEX=https://index.docker.io
- CACHE_REDIS_HOST=redis
- CACHE_REDIS_PORT=6379
- DEBUG=false
hostname: docker-registry
links:
- redis:redis
mem_limit: 512m
ports:
- "5000:5000"
privileged: false
restart: always
user: root
volumes:
- /opt/data/registry:/tmp/registry redis:
image: redis:3.0
cpu_shares: 10
expose:
- "6379"
mem_limit: 512m
restart: always
volumes:
- /opt/data/redis:/data

之后,启动服务。

$ docker-compose up -d

配置主机使用 mirror 服务

在其他主机上。配置 docker 的配置文件(比如 /etc/default/docker),加入一行:

DOCKER_OPTS="$DOCKER_OPTS --registry-mirror http://localmirror:5000"

当中 localmirror 替换为刚才配置了 mirror 服务的机器地址。

之后重新启动 docker 服务。

$ sudo service docker restart

測试

随便下载一个镜像,比方 ubuntu:14.04,正常须要十几分钟。

删除下载的镜像,再次下载。一分钟不到。就完成下载了。

转载请注明:http://blog.csdn.net/yeasy/article/details/46916315

配置 Docker 镜像下载的本地 mirror 服务的更多相关文章

  1. 配置Docker镜像加速器

    由于在国内下载docker官方镜像的速度很慢且容易报错,因此需要配置docker镜像加速器来解决这个问题,加速器就是镜像代理的概念,只代理公有镜像,报错结果如下: net/http: request ...

  2. ubuntu/centos/mac/windows 使用阿里源加速docker镜像下载

    官方下载docker比较慢,阿里提供云容器hub, 1.打开阿里容器hub https://dev.aliyun.com/search.html 该页面右上方有一个管理中心,点击进去 2.选择镜像加速 ...

  3. Coreos配置docker镜像加速器

    CoreOS配置docker镜像加速器 CoreOS下的Docker配置是通过flannel unit来实现的. 1) 通过命令 systemctl cat docker 可以看出配置文件的默认位置 ...

  4. 阿里配置docker镜像专属地址

    阿里配置docker镜像专属地址 待办 https://www.jianshu.com/p/6b416dff0691

  5. Centos7.0 配置docker 镜像加速

    在Docker Hub官网上注册帐号,即可下载使用仓库里的全部的docker镜像.而因为网络原因,国内的开发者没办法流畅的下载镜像,经常会出现下载中断的错误.解决方法就是使用国内的容器Hub加速服务, ...

  6. 傲视Kubernetes(二):Docker镜像搭建与本地Kubernetes环境搭建

    主要内容: 1.Docker与Kubernetes的关系 2.SpringBoot微服务的Docker镜像创建 3.Kubernetes本地环境搭建 一.Docker与Kubernetes的关系 在说 ...

  7. docker镜像下载加速(5)

    镜像下载加速 由于 Docker Hub 的服务器在国外,下载镜像会比较慢.幸好 DaoCloud 为我们提供了免费的国内镜像服务. 下面介绍如果使用镜像. 在 daocloud.io 免费注册一个用 ...

  8. docker镜像下载出现:received unexpected HTTP status: 500 Internal Server Error

    1.镜像下载总是出现报错:received unexpected HTTP status: 500 Internal Server Error 2.尝试多种方法: ①阿里云docke加速器:注册之后, ...

  9. docker镜像 - 下载、创建镜像和导入导出镜像

    实验环境 CentOS 7.5 安装并启动docker yum install -y docker systemctl start docker 镜像 安装镜像 docker pull [OPTION ...

随机推荐

  1. SQLServer 与 MySQL

    SQL Server         MySQL1.getdate()            NOW()        2.top 100                               ...

  2. JVM Specification 9th Edition (4) Chapter 4. The class File Format

    Chapter 4. The class File Format Table of Contents 4.1. The ClassFile Structure 4.2. Names 4.2.1. Bi ...

  3. TCP/IP各层协议数据格式

    ISO规范里定义了7层网络模型,实际常用的仍为TCPIP四层网络模型. 注:本文章插图均来自<图解TCP/IP>. 数据链路层帧格式 经常说的帧格式为以太网帧格式,由于类型和帧长度字段不重 ...

  4. eclipse中根据方法找到其实现类

    面向接口编程中,程序全是面向接口变成调用,在维护别人写的系统的时候怎么样快速定位当前根据接口调用的方法是哪个实体类实现的: Ctrl + T/f4(光标放在需要查看的方法上,然后按Ctrl+T或者F4 ...

  5. 查看与修改网关,DNS

    网关是网络中的路由器,作为访问其他网络的接入点. 修改ip地址 即时生效: ifconfig eth0 192.168.0.20 netmask 255.255.255.0 启动生效: 修改/etc/ ...

  6. RTP时间戳

    http://xingyunbaijunwei.blog.163.com/blog/static/7653806720126121014111/ ——————————————————————————— ...

  7. 在java中,List是个接口,那实现List接口的类有哪些,有什么区别?

    在java中,List是个接口,那实现List接口的类有哪些,有什么区别? 解答: ArrayList是使用数组方式存储数据,此数组元素数大于实际存储的数据以便增加和插入元素,它们都允许直接按序号索引 ...

  8. 简单说明什么是递归?什么情况会使用?并使用java实现一个简单的递归程序。

    解答: 1)递归做为一种算法在程序设计语言中广泛应用.是指函数/过程/子程序在运行过程中直接或间接调用自身而产生的重入现象. 2)递归算法一般用于解决三类问题: a.数据的定义是按递归定义的.(Fib ...

  9. mac os下android 通过battery-historian进行电量分析

    简单介绍下如何用battery-historian进行电量分析,因为battery-hostorian是基于go语言的框架,所以需要安装go 1.安装go 2.配置go环境变量到.bash_profi ...

  10. java读取配置文件(转)

    转载:http://blog.csdn.net/gaogaoshan/article/details/8605887 java 4种方式读取配置文件 + 修改配置文件     方式一:采用Servle ...