docker私有库搭建(Centos6.5搭建docker私有库完整)

使用centos6.5搭建属于自己的docker私有库

1.搭建启动docker

首先,我们需要下载docker到centos

yum install docker-io

中间需要输出y回车进行确定。

当下载完成后,启动docker

service docker start

如果提示启动不了,那么我们更新一下依赖的包,如果启动正常不需要执行下面的命令

yum upgrade device-mapper-libs  

中间同样需要输入y确定

更新完过后,我们再次启动docker

service docker restart或service docker start

如下图查看版本说明启动成功。

docker私有库搭建(Centos6.5完整) - Wang - Wang的博客

 

接下面进入正题,搭建docker私有库,不明思议,从官方下载的p_w_picpaths由于各种原因,速度奇慢无比,所以,搭建私有库很有必要。

2.搭建dokcer私有库

推荐使用下面的命令启动,/tmp/registry registry为默认路径,我们需要映射该路径,即让镜像真正保存到本地磁盘上。

docker run -d -p 5000:5000 -v /opt/data/registry:/tmp/registry registry

查看私有库是否存在的方法是在浏览器通过本机ip:5000在浏览器访问,

如下图所示,搭建成功,docker私有库搭建(Centos6.5完整) - Wang - Wang的博客

这样我们就有了自己的私有库

3.测试docker私有库的push和pull

接下来,我们用另一台centos虚拟机试一试私有库有没有搭建好

同样,需要有docker,步骤同上,启动docker

我们可以先从官网上pull一个镜像来做测试,既然是测试,推荐一个小的镜像,busybox,2M左右

docker pull busybox

下来过后,我们将该镜像试着push到私有库。

push的第一步我们需要给该镜像打tag。

docker tag busybox 192.168.112.136:5000/busybox

接下来就pull

docker push 192.168.112.136:5000/busybox

push的时候如果出现下面的情况。

docker私有库搭建(Centos6.5完整) - Wang - Wang的博客

此处注意,因为Docker从1.3.X之后默认docker registry使用的是https,所以当用docker pull命令下载远程镜像时,如果远程docker registry是非https的时候就会报上面的错误。

那么我们需要改一下docker的配置文件,关于docker的配置文件,不同的系统也许地方不同,不够操作都是大同小异,centos下面是在/etc/sysconfig/docker,ubuntu在/etc/default/docker

那么我们修改配置文件

vi /etc/sysconfig/docker

把其中的

other orgs =--insecure-registry=10.1.11.194:5000

此处10.1.11.194是私有库对应的ip

改完保存过后需要重启一下docker生效。

service docker restart

接下来在push一次

docker push 192.168.112.136:5000/busybox

push成功

docker私有库搭建(Centos6.5完整) - Wang - Wang的博客

浏览器输入10.1.11.194:5000/v1/search会出现下图,发现多了一个busybox的镜像,说明push成功

docker私有库搭建(Centos6.5完整) - Wang - Wang的博客

同理:pull也是一样的 docker pull 10.1.11.194:5000/busybox

 上面的是查询私有库所有的镜像,也可以指定查询的镜像,在浏览器

10.1.11.194:5000/v1/search?q=busybox

**以下为小提示

以上关于私有库的查看都是在浏览器上进行的,也可以直接用命令的形式进行查看

*查看私有库里面存在的所有镜像
docker search [my.registry.host]:[port]/library 
library为私有库名称,一般不改, 比如docker search 10.1.11.194:5000/library/busybox


*docker 通过pull的p_w_picpaths存在于本地
通过cat /var/lib/docker/repositories-devicemapper 查看 ,不同的路径有差异


Docker 配置文件位置Docker 的配置文件可以设置大部分的后台进程参数,在各个操作系统中的存放位置不一致

在 ubuntu 中的位置是:/etc/default/docker
在 centos 中的位置是:/etc/sysconfig/docker