码迷,mamicode.com
首页 > 其他好文 > 详细

Docker 搭建本地仓库

时间:2018-10-18 18:13:34      阅读:279      评论:0      收藏:0      [点我收藏+]

标签:mct   格式   支持   osi   库存   端口映射   资料   daemon   epo   

Docker Hub 公有仓库存在以下缺点:
1、网络依赖性强,链接速度限制;
2、私有化资料存放网络不安全
3、私有化仓库需要收费,存在安全风险

解决方案使用本地registry
Docker已经讲registry开源了,同时在Docker Hub上也有官方镜像registry
我们可以直接使用:
(1)启动registry容器
shell>docker run -d -p 5000:5000 -v /myregistry:/var/lib/registry registry:2
使用registry:2的镜像
-d 后台运行
-p 讲容器的5000端口映射到主机的5000端口
-v 将容器/var/lib/registry目录映射到Host的/myregistry/docker,用于存放镜像数据

验证:shell>docker ps 查看仓库容器是否启动

(2)本地下载一个测试镜像
shell>docker pull centos

(3)通过docker tag 重命名本地镜像,与registry匹配
shell>docker tag centos 仓库服务器地址:5000/用户名/centos:v1
shell>docker tag centos x.x.x.x:5000/testname/centos:v1
repository的完整格式为:

Docker Hub 上可以省略[registry-host]:[port],默认为docker.io

(4)docker pull/push测试
shell>docker push x.x.x.x:5000/testname/centos:v1
shell>docker pull x.x.x.x:5000/testname/centos:v1

(5)上传的镜像在该目录下
/myregistry/docker/registry/v2/repositories/docker39/cetnos_httpd/

提示:
shell>docker pull x.x.x.x:5000/testname/cetnos
Using default tag: latest
Error response from daemon: Get https://x.x.x.x:5000/v2/: http: server gave HTTP response to HTTPS client
这是docker不支持https
centos系统通过:修改或者添加daemon.json文件,重启docker服务即可
shell>vim /etc/sysconfig/daemon.json
{"insecure-registries":["x.x.x.x:5000"]}

shell>systemctl restart docker //重启服务后,记得启动registry仓库容器

Docker 搭建本地仓库

标签:mct   格式   支持   osi   库存   端口映射   资料   daemon   epo   

原文地址:http://blog.51cto.com/7603402/2303926

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!