- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《详解构建微服务的开源技术之Docker
详解构建微服务的开源技术之 Docker一、前言 Docker 是最近在云计算领域出现的新技术。目前,Docker 和以其为代表的容器技术的热度已经改过了之前的 OpenStack。Docker 以及其所代表的容器技术的流行,即使因为软件技术的进步,更是由于其符合云计算对软件领域所带来新思想。在如今的互联网和企业应用开发领域,微服务和 DevOps 是两个思想颇为深入人心。而 Docker 技术的出现和其对整个容器技术及其生态圈发展的促进,解决了这个微服务和 DevOps 这两个思想实践中的很多难题,使得前面两种思想大规模地实现成为了可能。所以,我们有必要地深入了解一下 Docker 这个技术,看看它会对云计算时代的软件开发产生什么样的影响。本文将介绍如下内容什么是容器技术 什么是 DockerDocker 是如何实现的 为什么要使用 Docker至于 Docker 的用法,不在这里做介绍。Docker 的入门使用,可以前往 Docker 官网。各种高级用法、技巧、经验,可以前往技术网站 CSDN、InfoQ 和 CoreOS、Centurylink Labs 等这些使用 Docker 的云计算厂商的网站。二、容器技术简介容器技术有时会被称为轻量化虚拟技术。但不同于基于 Hypervisor 的传统虚拟化技术,容器技术并不会虚拟硬件。容器本身和容器内的进程都是运行在宿主 Linux 系统的内核之上。但与直接运行的进程不同,运行在容器内的进程会被隔离和约束。从而以直接运行的高效实现了虚拟技术的大部分效果。容器技术的历史容器技术并不是一个新鲜事物,早在1979年出现的在 Unix 系统中的 chroot 便是容器技术的雏形。而随后出现的 BSD Jail、Solaris Containers 和 OpenVZ 都算是容器技术的先驱。但容器技术开始普及却是在2007年,这一年 Google 贡献出 cgroups,并且从 2.6.4 开始,Linux 内核包含了这一组件,随后容器技术开始逐渐普及。但容器技术真正大放异彩则要等到2013年 Docker 0.10 版本发布。三、Docker 简介在 Docker 出现之前,不仅 Google 大量使用容器技术,国内的如淘宝也使用容器技术搭建了自己的应用平台。影响力最大的开源 PaaS 解决方案 CloudFoundry,也在使用自己的容器解决方案 Warden。而 Docker 发布之后,因其极有可能成为未来企业应用、互联网应用和云计算应用的开发、部署的中心角色,所以得到了几乎所有的业界大佬的追捧,Google、VMware、微软、RedHat 等等都已全力推动 Docker 技术的发展。同时,围绕 Docker,出现了一系列以 CoreOS 为代表的新技术。Docker 的出现并非创造了一个新的容器技术,而是在 LXC (LinuX Container)注1、cgroups、namespaces 技术之上所构建的一种技术:Docker 简化了容器的运行:它通过一个简单的命令就能够运行起一个容器docker run [params] [image] [command (optional)] Docker 简化了容器镜像的构建和分发:Docker 提供了Dockerfile和docker commit两种方式构建镜像,并且提供了 Docker image registry 机制以保存和分发镜像 形象地解释打一个比方,集装箱(容器)对于远洋运输(应用运行)来说十分重要。集装箱(容器)能保护货物(应用),让其不会相互碰撞(应用冲突)而损坏,也能保障当一些危险货物发生规模不大的爆炸(应用崩溃)时不会波及其它货物(应用)但是把货物(应用)装载在集装箱(容器)中并不是一件简单的事情。而出色的码头工人(Docker)的出现解决了这一问题。它(Docker)使得货物装载到集装箱(容器)这一过程变得轻而易举。对于远洋运输(应用运行)而言,用多艘小货轮(虚拟机)代替原来的大货轮(实体机)也能保证货物(应用)彼此之间的安全,但是和集装箱(容器)比,成本过高,但适合运输某些重要货物(应用)。四、Docker 的组成Docker 主要有 Docker Hub 和 Docker 引擎组成。前者是Docker 官方提供的容器镜像仓库;后者运行在宿主机上,可分为服务器端和客户端两部分。服务器端负责构建、运行和分发 Docker 容器等重要工作,客户端负责接收用户的命令和服务程序进行通信。除了这两部分,Dockerfile 也是不得不提的,它虽然不能算作一个独立的组件,但是却是 Docker 中很重要的部分。通过 Dockerfile,技术人员可以创建自己的 Docker 容器镜像。Dockerfile 起到了连接开发
文档评论(0)