Docker搭建私有仓库

1,下载仓库镜像。

docker pull  registry    //主要用于搭建私有仓库的。

 

2,将宿主机端口映射到容器中去,容器的5000端口是不能更改的。

docker run -d -p 5000:5000 registry //以registry镜像启动容器,监听5000端口

 

3,进入到私有仓库容器中去。

docker exec -it  796(容器id)  /bin/sh    //这里是sh 不是bash 因为这里是没有做软连接的。

netstat -lnp 查看5000端口是否开启。

4,查看能否访问该私有仓库。

curl  -I  127.0.0.1:5000  状态码是不是200

5,上传私有镜像到私有仓库中。

介于实验方便,我们就下载1个比较小的镜像,buysbox,另外在上传前

需要将镜像做个tag ,注明ip和端口 即

docker tag busybox  本机IP:端口/busybox 

上传过程中有报错:

造成上述的原因是Docker从1.3.X之后,与docker registry交互默认使用的是https,然而此处搭建的私有仓库只提供http服务,所以当与私有仓库交互式就会有上面的错误,为了解决这个问题需要在启动docker server时增加启动参数为默认使用http访问,解决方法为

# vim /etc/init.d/docker

把$exec -d $other_args改为$exec -d --insecure-registry 192.168.2.227:5000 $other_args

重启docker服务

# /etc/init.d/docker restart

启动容器:

# docker start registry_container_id //这里要记得启动容器

再次上传:

# docker push 192.68.2.227:5000/busybox 

查看私有仓库里的所有镜像

#  curl 192.168.2.227:5000/v2/_catalog

 这里我们可以看到我们刚上传的镜像

下载镜像的话:

docker push 192.168.2.227:5000/busybox 

参考保哥博客,链接如下:

http://www.cnblogs.com/fansik/p/5530802.html

posted @ 2016-11-06 15:11  某电商首席日志工程师  阅读(311)  评论(0编辑  收藏  举报