渐入佳境,我们开始比较具体的工作,由于Docker是一个基础组件,所以本文的主题是Docker和Registry2。

底层系统基于Centos7,先在一台云主机上安装Docker,Docker的安装非常简单,参考官网Docker Centos部分安装指导只需要几步,安装好之后开始以下配置。

关闭防火墙

service firewalld stop
systemctl disable firewalld.service

Docker 1.12 禁用STL(HTTPS)登录Regisry

配置Docker通过STL和Registry通讯比较麻烦,由于是么有云环境,就索性禁用了,

vim /usr/lib/systemd/system/docker.service
#ExecStart=/usr/bin/dockerd
ExecStart=/usr/bin/dockerd --insecure-registry registry2.io

配置好以后需要重启Docker服务生效,registry2.io 是我们给Registry指定的域名!

注意:配置好以后在Openstack界面上为此云主机生成快照,在以后创建的云主机将以此为系统基础,而不是纯净的Centos7,这样可以节约很多时间!

Registry

我们采用Vmware的Harbor做为直接使用Registry2的替代,号称是企业级的私有镜像仓库,Harbor支持中文而且功能全面,可以在线多项目管理Images包括搜索、删除等功能,最主要的是安装也特别简单,Harbor对于Registry2省去一些秘钥、证书的生成等繁杂的配置而且功能更强大。

项目主页https://github.com/vmware/harbor/ 安装同样非常简单,用Docker快照创建云主机,安装请参考官方安装指导和 http://www.xf80.com/2016/10/10/docker-harbor/

Harbor通过Docker Compose安装的,使用 docker-compose stop 和 docker-compose rm 可以停止和删除Harbor。

配置Harbor,Harbor.cfg

指定hostname和harbor_admin_password,如果是线上使用还要配置外部存储、主从、邮箱等。

安装后运行效果

Docker登录Registry

在docker的云主机上运行

docker login registry2.io

提示输入用户名和密码(在上面配置的)就可正常登录到Harbor,之后就可以Push和Pull等操作了。

Openstack+Kubernetes+Docker微服务实践之路--Docker和Registry2的更多相关文章

  1. Openstack+Kubernetes+Docker微服务实践之路--基础设施

    近两年微服务在网上聊的如此的如火如荼,备受关注,我在去年下半年的一个项目中也用到了阿里云的EDAS.HSF,深有体会,最近时间空闲出于好奇,决定一探究竟打算自建微服务平台,基本实现EDAS.HSF的功 ...

  2. Openstack+Kubernetes+Docker微服务实践之路--RPC

    重点来了,本文全面阐述一下我们的RPC是怎么实现并如何使用的,跟Kubernetes和Openstack怎么结合.  在选型一文中说到我们选定的RPC框架是Apache Thrift,它的用法是在Ma ...

  3. Openstack+Kubernetes+Docker微服务实践之路--Kubernetes

    经过几番折腾终于搞定Kubernetes了,我们要在Openstack上部署Kubernetes集群,使用最新工具Kubeadm来安装,由于不能直接访问Kubernetes的源,我们需要一台可以穿墙的 ...

  4. Openstack+Kubernetes+Docker微服务实践之路--选型

    上一篇博文中我们选定Openstack做为我们的基础设施IAAS平台,本文将明确我们用什么技术做为微服务平台的技术选型. 经过对微服务的特性总结和添加一些个性需求后对微服务平台的基本要求 PRC远程调 ...

  5. Openstack+Kubernetes+Docker微服务实践之路--服务发布

    结合上文,我们的服务已经可以正常运行了,但它的访问方式只能通过服务器IP加上端口来访问,如何通过域名的方式来访问到我们服务,本来想使用Kubernetes的Ingress来做,折腾一天感觉比较麻烦,I ...

  6. Openstack+Kubernetes+Docker微服务实践之路--弹性扩容

    服务上线就要顶的住压力.扛的住考验,不然挨说的还是我们这帮做事的兄弟,还记得上图这个场景吗 老办法是服务集群部署,但总归有个上限,之前跟阿里合作的时候他们有个弹性计算可以通过设置CPU的阀值来动态扩展 ...

  7. Openstack+Kubernetes+Docker微服务实践

    Openstack+Kubernetes+Docker微服务实践 .....   Openstack+Kubernetes+Docker微服务实践之路--选型 posted @ 2016-11-15 ...

  8. QCon技术干货:个推基于Docker和Kubernetes的微服务实践

    2016年伊始,Docker无比兴盛,如今Kubernetes万人瞩目.在这个无比需要创新与速度的时代,由容器.微服务.DevOps构成的云原生席卷整个IT界.在近期举办的QCon全球软件开发大会上, ...

  9. 微服务实践之路--RPC

    微服务实践之路--RPC 重点来了,本文全面阐述一下我们的RPC是怎么实现并如何使用的,跟Kubernetes和Openstack怎么结合. 在选型一文中说到我们选定的RPC框架是Apache Thr ...

随机推荐

  1. Python--While循环语句

    Python While循环语句 Python 编程中 while 语句用于循环执行程序,即在某条件下,循环执行某段程序,以处理需要重复处理的相同任务.其基本形式为: while 判断条件: 执行语句 ...

  2. 003-常用的Meta标签写法和作用

    页面关键词<meta name="keywords" content="your,tags"/> 页面描述<meta name="d ...

  3. 怎样设置才能允许外网访问MySQL

    1.将本地数据库的user表的第一条记录的host数据改为%,或者用update user set host='%' where user='root'; 2.用MySQL的命令行客户端操作如下步骤: ...

  4. Android 资源(resource详解(转)

    本文介绍在Android开发中关于资源文件的存储操作.对于Android资源也是非常重要的,主要包括文本字符串(strings).颜色(colors).数组(arrays).动画(anim).布局(l ...

  5. Oracle中的日期加减

    加法   select sysdate,add_months(sysdate,12) from dual;        --加1年 select sysdate,add_months(sysdate ...

  6. Python函数信息

    Python函数func的信息可以通过func.func_*和func.func_code来获取 一.先看看它们的应用吧: 1.获取原函数名称: 1 >>> def yes():pa ...

  7. CDC的StretchBlt函数载入位图时图片失真问题

    最近遇到加载的bmp图片出现失真问题,查找得知需要用SetStretchBltMode函数设置拉伸模式. 函数原型:int SetSTretchBltMode(HDC hdc, int iStretc ...

  8. form提交的几种方法

    一. form表单中有 type是submit类型的button,点击 submit,从而会post数据,引发回传. <form action="?" name=" ...

  9. Objective-C基础2

    16.继承 1)不能和父类定义一样的变量 2)单一继承,不支持继承多个类 3)支持多层继承子类也可以被继承 17.实例变量修饰符 public:公开的,在其他类中也可以访问 protected:受保护 ...

  10. java中包命名常见规则

    做java的都知道java的包.类.接口.枚举.方法.常量.变量等等模型都有一套约定的命名规则! 学习每一种语言都应该学习对应语法和命名规则,以保持一个良好的编码风格.一来显示自己的专业.二来方便阅读 ...