Docker搭建私有仓库
Posted 我是一个快乐的小op
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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
参考保哥博客,链接如下:
以上是关于Docker搭建私有仓库的主要内容,如果未能解决你的问题,请参考以下文章