设为首页 收藏本站
查看: 1911|回复: 0

[经验分享] docker 私有仓库搭建及测试

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2017-3-1 13:20:23 | 显示全部楼层 |阅读模式
1.Docker仓库
docker仓库实际上是一个docker容器,从网上下载registry.tar导入镜像,利用该镜像即可以生成docker仓库。
为了安全,这里利用了nginx作为反向代理服务器,启用了ssl方式的加密传输,客户端可以通过访问nginx服务器来下载镜像。
注意:在本案例中,docker仓库和nginx服务器处于同一主机中。
1)安装前准备
wKioL1i0OROwwIuTAAAHcPL4qrs721.png
固定主机名

wKiom1i0ORbiM5vIAABPvAFAXho657.png
固定IP地址


wKioL1i0OReQqtZZAAALuKbhi5I890.png
在hosts文件中添加本机的解析条目(没有DNS的情况下)


wKiom1i0OReiMpMLAAAKT74L7P8963.png
安装http支持包,其中pcre-devel支持正则表达式,zlib-devel支持压缩算法

2)搭建CA,实现加密传输。
wKioL1i0ORiwyMGZAAALpVLVhzA324.png
检查该目录,确定该目录下没有以下文件:
cacert.pem  index.txt  index.txt.attr  index.txt.old  serial  serial.old


wKiom1i0ORnxJmj-AAAPXUsDRtk038.png
生成根密钥
"genrsa"为算法,"private/cakey.pem"为密钥的生成的位置,这里使用的是相对路径
"2048"为密钥长度。

wKioL1i0OR_x0ntBAACCMYzfx9s184.png
生成根证书,执行命令后依次要输入:国家代码(两个英文字母)、省份、城市、组织、单位、邮箱。

wKiom1i0OSCzoyGXAAAJL-QFx98628.png
wKiom1i0OSDTKtfJAAAK5ClrB7s343.png
为nginx生成密钥(在nginx服务器)

wKioL1i0OSXSw6BvAACONaEvePA235.png
为nginx生成证书签署请求(在nginx服务器)

wKioL1i0Od7zEDRIAAANNxMMIQw209.png
wKiom1i0Od7T5RPiAAAI1BxX9LA946.png
私有CA根据请求来签发证书(在CA服务器即docker仓库服务器,需要将请求发送给CA)

wKioL1i0Od-xmFG1AAAbGP09w6Q408.png
出现提示时,输入两次y
证书生成

3)安装、配置、运行nginx
wKiom1i0OeDRJRhYAAAKbZl8Se8150.png
创建运行账户和组

wKioL1i0OeHyZ3ZxAAArrvSPbiQ418.png
wKioL1i0OeSxkMZ9AAAI1OSQrrc984.png
编译安装nginx

wKioL1i0OeWyAv5RAAAJmOHbOQs706.png
优化nginx启动执行路径

wKiom1i0OeeAVp5YAAAv-IHrVvM927.png
wKiom1i0OemQVwP7AAAwd4hMPV8824.png
修改nginx.conf

wKioL1i0Oeqxv7nQAAAgsy3od30255.png

检测nginx主配置文件,并且启动nginx程序。

wKiom1i0OujTb715AAATGxV8JLc936.png
添加防火墙例外

4)配置运行docker
需要先关闭docker服务
wKioL1i0OumTQu9TAAAIMguSAXU834.png
wKioL1i0OunTlfomAAAPiRTyLZU245.png
编辑docker配置文件,添加这行内容,目的是实现安全的传输。

wKiom1i0OuqQ8xUZAAAWRjRfUu8639.png

wKioL1i0Ouvxm1BHAAAHLOqInQo039.png
启动docker服务

5)运行私有仓库容器
wKiom1i0OuuQPQkYAAAIpAlxI_s242.png
导入registry.tar

wKiom1i0OuzzOrMLAAAcBeUcPHE882.png
运行容器,容器通过的端口为5000,这里使用了数据卷挂载到了容器中。

wKioL1i0Ou3wZB9AAAASFK2Veqk954.png
wKiom1i0Ou6RLnZuAAAq1UNimPA768.png
测试仓库是否可用,浏览器访问"https://docker.benet.com"或者执行以上命令显示代码为200,说明仓库可用。

2.配置客户机
1)配置前准备
wKioL1i0Ou-C3UUZAAAMF7K5lho532.png
同样,在hosts中添加解析记录,这里写的是docker 仓库的主机名和IP地址。(当nginx服务器和docker仓库不在同一台主机时,填写的便是nginx服务器的)

wKioL1i0O6vxl7ajAAAM1AWvaag034.png
wKiom1i0O6uAdqJLAAAJ5_Li7B4806.png
拷贝证书,并且重命名。

wKioL1i0O6ySeY6SAAArtvlS_dU442.png
测试仓库是否可用


wKiom1i0O62TvdxnAAAR79Ay20U420.png
注册账户

2)上传下载镜像
wKiom1i0O7PylLF_AAAcLe8GzDw415.png
客户端已存在的镜像

上传:
wKioL1i0O7TiJx4iAAATz_LyuTo720.png
更换tag标签后上传到docker仓库

wKiom1i0O7XDka4eAAAHiccoChM701.png
wKioL1i0O7axrysKAAAf64bq1vw587.png
在仓库中查看客户端上传的镜像,需要先安装tree工具。

下载:
wKiom1i0O7eD7WiwAAAJLbCNhRw556.png
wKioL1i0O7zB-aRoAAAIV4IUUak041.png
在客户端删除所有镜像,然后下载之前传到仓库的镜像。

wKioL1i0PP7hnfnFAAAcy8ZoB7M782.png
最后在客户端发现该镜像已存在。


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-348871-1-1.html 上篇帖子: dockerfile 下篇帖子: 使用docker安装基于centos6.7系统环境下nginx 仓库 网上 代理服务器 英文字母 private
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表