基于Docker的云计算快速开发测试架构【实用文档】doc.doc
上传人:天马****23 上传时间:2024-09-10 格式:DOC 页数:114 大小:30.7MB 金币:10 举报 版权申诉
预览加载中,请您耐心等待几秒...

基于Docker的云计算快速开发测试架构【实用文档】doc.doc

基于Docker的云计算快速开发测试架构【实用文档】doc.doc

预览

免费试读已结束,剩余 104 页请下载文档后查看

10 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

基于Docker的云计算快速开发测试架构【实用文档】doc文档可直接使用可编辑,欢迎下载基于Docker的云计算快速开发测试架构中国邮政集团公司山东省信息技术局马岩概述随着山东邮政业务转型的深入和业务种类的多样化发展,迫切需要邮政IT部门的支撑和引领作用,特别是在当前业务发展迅速,各业务功能开发和上线频繁的情况下,对我们的系统开发能力提出了更高的要求,而现有的开发测试环境存在资源利用效率低,测试版本管理复杂,迁移成本高等诸多缺点.以Docker为代表的容器云计算技术自去年起逐步成长起来,容器技术以它轻量,快速,隔离的优势,迅速在IT学术界和企业界引起了广泛的关注。本文在概述Docker容器核心技术理念基础上,着重介绍了我们利用Docker容器云计算技术优化系统开发过程的思路,并搭建了一个以docker技术为基础的开发测试框架。该框架有效整合了开发和测试环境,显著提高了我们开发测试的速度和质量,使我们能更好的服务于业务的发展。Docker容器云计算技术2。1Docker核心技术Docker是以Linux的cgroup、namespace等容器技术为基础的开源容器引擎,目前已经获得包括微软,Google,红旗等主流IT厂商的支持.Docker利用轻量级的虚拟化技术,有效的封装了操作系统底层的隔离,进程独立等功能,实现了各种依赖环境和应用的打包,方便了项目的开发测试和部署过程。Docker与传统虚拟机技术的对比:传统的虚拟化技术例如vmware公司的vsphere目标是建立一个从硬件到软件模拟化的虚拟机,具有整套的操作系统环境,而Docker技术则是基于操作系统的底层容器API,他没有模拟完整的操作系统环境,从进程上看,docker虚拟机里只有应用的进程而没有其他的操作系统进程,它将项目的源码,依赖和环境配置打包成一个隔离独立的运行环境,所以它具有快速轻量的特点。2.2Docker解决的主要问题2.2.1减轻虚拟化的成本传统的虚拟机技术要安装操作系统后才能使用,而操作系统本身会占用大量的系统资源,是一种极大的浪费。而Docker容器不需要操作系统安装也能运行,在提供了进程隔离的同时,为应用的运行提供了有效的运行环境。2。2.2应用的快速运行和部署Docker独有的镜像技术,使各种环境依赖和应用打包后形成镜像存储在Docker仓库中,当需要部署运行的时候,只要从仓库获取运行镜像即可得到相应的功能,docker将复杂的部署过程,简化为复制加运行,不需要中间多余的工作.2.2.3资源的有效度量Docker利用操作系统的容器API可以对cpu,网络,内存等各种资源进行有效的定制和度量,减少了单个应用死循环对其他应用的影响.2。2.4复杂环境依赖的有效隔离应用的运行环境需要多种第三方插件和运行中间件的支持,这给应用的开发测试带来了很大的复杂性,往往新环境的搭建要耗费大量的时间和精力。Docker通过将多种依赖库和中间件打包成镜像的方法,有效减轻了环境搭建和移植的复杂性,同时Docker支持镜像的叠加,容器的网络等功能,从而进一步简化了环境构建的工作。2.3Docker的主要部件Docker主要部件包括Docker客户端,docker后台进程,docker镜像仓库和docker容器进程四个部分。2。3.1Docker客户端用户通过Docker客户端与docker后台守护进程进行通讯,通过Docker客户端命令行工具,发起对Docker各种功能的操作指令.Docker通讯支持tcp,unixsocket等多种通讯方式。2.3.2Docker后台守护进程Docker后台守护进程包含两个模块,Docker服务和Docker引擎。Docker服务接受来自Docker客户端发送的命令,并交由Docker引擎中相应的处理程序进行处理。Docker引擎是实际完成工作的核心进程。2。3.3Docker仓库Docker仓库用于存放Docker镜像。镜像类似虚拟机的快照概念,是Docker容器运行的代码基础。Docker仓库可以使用公有仓库DockerHub,也可以搭建企业内部的私有仓库。2。3.4DockerFile构建文件DockerFile描述了一个完整的镜像的构建过程,包括依赖软件和中间件的安装,目录,环境变量,暴露端口,端口映射等。基于Docker容器的云计算快速开发测试框架3。1现有开发测试环境及存在的问题下图是一个开发测试和部署的过程,传统的开发测试过程存在如下几个问题:1、资源利用效率低2、单物理机多应用无法有效隔离(进程空间,cpu资源,磁盘)3、运维部署不便4、测试、版本管理复杂5、迁移成本高6、传统虚拟机,空间占用大,启动慢,管理复杂一个IT系