用 Go 开发的 Docker 竟然在这个大会上首发 | 赠书活动


题图摄于北京奥林匹克中心

本文部分内容节选自最新出版的《Harbor权威指南》前言,文末有赠书活动,不要错过。

 

2013 年 3 月 15 日下午,在硅谷的圣克拉拉(Santa Clara)的一个技术大会上,一位身着黑色T恤衫的极客工程师正在进行闪电演讲(lightning talk)。因为只有5分钟的时间,他的语速很快,配合着同样快速的键盘敲击,连珠炮似地讲解和演示着他们公司的新软件。演讲结束后,演讲人立刻被许多粉丝围绕着索要软件的试用方式。当时谁也没有料到,这将是一场划时代的演讲。演讲的题目为“Linux容器的未来”(The Future of Linux Containers),演讲人为 Solomon Hykes,是一家叫做dotCloud 的初创公司的 CEO,他们发布的新软件称为 “Docker”。

这个大会是Python语言的全球社区聚会PyCon,Docker 之所以在 PyCon 上面首发,因为最开始是采用 Python 开发的。在后续的版本中,为了提升运行效率,Docker 已经用 Go 语言重写了。

 

Docker 在发布后,获得空前的成功,以极其迅猛的速度传遍了全球开发者社区,成为史上最受欢迎的开发工具之一。Docker 早期版本基于 Linux 自带的 LXC(LinuX Containers)工具库,提供了一系列更方便易用的工具链,大大降低了普通用户使用容器的门槛。Docker 和 LXC 相比又有不同的侧重点,LXC 主要目的是为系统管理员创建多个隔离的操作系统虚拟环境,而 Docker 则另辟蹊径,更侧重于开发者的需求,封装了应用且提供了隔离应用的运行环境,更加轻量和便捷,因而受到开发者的喜爱。

 

Docker 能够大获成功,除了简便易用外,还有另一个居功至伟的“杀手锏”:容器镜像。笔者在2015年公众号文章《Docker镜像的核心价值》中指出,镜像技术就是 Docker 软件的核心所在,包括了镜像格式的创新和镜像分发的 Registry 服务。Docker公司有个著名的口号:“Build, Ship and Run”,翻译过来就是三个动词:“构建、传送和运行”,简练地描绘出了应用开发的精髓,其中隐含的意思是:构建镜像、传送镜像和运行镜像,一切皆以镜像为中心。OCI 组织有三个规范,分别与上述三个动词对应,即镜像规范(构建)、运行时规范(运行)和正在制定的分发规范(传送)。目前尽管这些规范有一些不同的实现,但镜像规范的实现基本上是以 Docker 的镜像格式为主。由此可见,镜像是容器应用的关键技术,围绕镜像的一系列管理工作将是实际运维中的重要组成部分。

 

在Docker 出现之前,笔者已经接触和使用过容器技术。笔者在上一家任职的 Sun公司时,负责运用 Solaris 的容器(Container)技术做解决方案。从 2012 年开始,笔者在 VMware 公司负责 Cloud Foundry 开源 PaaS 项目的技术推广工作。Cloud Foundry 项目使用了称为 Warden 的容器引擎来运行应用。Warden和Docker很类似,都是 PaaS 项目中的容器执行引擎,只是Warden被“埋藏”在Cloud Foundry 项目中,没有像 Docker 那样独立发布出来。笔者在初次接触到Docker后,第一感觉是太惊艳了,使用体验相当流畅,比之前的同类容器方案优秀得多。笔者预感 Docker 将带来一场深刻的技术革命,后来也得到了印证。

 

笔者带领团队对 Docker 进行了研究,发现容器镜像是 Docker 的命脉所在,但是当时并没有很好的镜像管理工具。在一些技术大会上,不少用户也抱怨在镜像管理上遇到的诸多难题。针对镜像管理存在的痛点,笔者的团队开发了一个容器镜像管理软件,在公司内部试用后取得一定的成效。这个软件就是我们后来开源出来的 Harbor 镜像仓库。

 

Harbor 开源后的受欢迎程度远超我们的预料。伴随着云原生应用兴起的大潮,容器生态圈如火如荼地发展。Harbor 图形化的镜像管理功能独树一帜,切中了容器应用开发运维上的要点,在国内获得大量用户青睐,并且参与开源项目的开发者也与日俱增。在成为中国首个加入云原生计算基金会(CNCF)的开源项目后,Harbor和全球云原生社区的合作更加紧密,加强了对 Kubernetes 和 Helm 的支持。在 Harbor 2.0 中,还支持 OCI 的镜像规范和分发规范,可以管理各类云原生领域的制品。

 

目前在生产系统中部署 Harbor 的用户已经过千,国内很大一部分的云原生用户使用 Harbor 作为镜像和 Helm Chart 的制品仓库。Harbor 的维护者们从微信群、GitHub 的问题反馈以及邮件组等地方了解到不少用户遇到的问题,这些问题有一部分是因为用户对 Harbor 安装配置等方面理解不完全,还有一部分则是由于文档资料不完整或者缺失造成的。Harbor 社区的用户亟需一本参考书来指引 Harbor 系统的使用,然而市面上并没有这样的书籍。因此,电子工业出版社的张国霞编辑邀请笔者编写一本 Harbor 的技术书。笔者和 Harbor 项目的维护者们进行了沟通,大家都一致希望能够通过本书来完整地介绍 Harbor 项目的方方面面,让 Harbor 给用户带来更大的价值。

本书章节

第1章介绍云原生应用的产生背景、以镜像为主的制品管理原理和规范,以及制品仓库的作用。

第2章概述Harbor功能和架构,为读者理解后续的章节做铺垫。

第3章详细讲解Harbor的安装、部署,包括高可用部署的方案要点,还包括对Harbor的入门性介绍。

第4章介绍Harbor支持和管理OCI制品的原理、常见OCI制品的使用方法。

第5章阐释Harbor的权限管理和访问控制的原理,以及相关配置方法。

第6章解析Harbor中可使用的安全策略,包括可信的内容分发和漏洞扫描机制。

第7章讲解镜像、Helm Chart等制品在Harbor中远程复制的原理,以及与其他仓库服务的集成。

第8章详述 Harbor 的高级管理功能,包括资源配额、垃圾回收、不可变制品、保留策略、Webhook 等。

第9章解释 Harbor 生命周期的管理过程,包括备份、恢复、升级的步骤和方法。

第10章梳理 Harbor 的API的使用方法并给出编程示例。

第11章描述 Harbor 后台异步任务系统的机理,并分析了其主要源代码的工作原理。

第12章汇集和整理 Harbor 与其他系统的整合方法及社区用户的成功案例。

第13章介绍 Harbor 开源社区的管理原则、告警机制和开源项目参与方式,并展望项目今后的方向。

 

赠书活动:

《Harbor权威指南》是第一本全面介绍 Harbor 云原生制品仓库的书籍,业内多位专家联袂推荐。由 Harbor 开源项目维护者和贡献者倾力撰写,其中不乏 Harbor 项目的创始成员,甚至 Harbor 原型代码的设计者和编写者。新书推出后,不少读者都买书支持,为感谢广大读者,现举办赠书活动,参与方法:

1. 在本文末留言,发表对本文内容、Harbor开源项目或云原生技术的看法;

2. 转发本文并邀请朋友对您的文后留言点赞,留言点赞数最多的读者胜出,将获得《Harbor权威指南》新书一本。

3. 本次活动将送出赠书5本。

截止时间:2020年11月4日23点59分,获奖者可在后台告知联系方式。

需要本书的读者可扫码或点击“阅读原文”购买。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值