如果说个人主机时代比拼的是CPU主频和内存,在云计算时代,虚拟化技术则是重中之重。

虚拟化可以通过硬件实现,也可以通过软件实现,而Docker实现了轻量级的虚拟化。

Docker开源项目

Docker是基于Go语言实现的云开源项目,是2013年dotCloud公司发起,后来该公司改名为Docker Inc。

Docker项目现加入Linux基金会,遵循Apache 2.0协议,全部开源代码在https://github.cim/docker/docker 维护。

主流的Linux操作系统均支持Docker,而自Redhat RHEL 6.5/CentOS 6.5以上系统、Ubuntu 14.04都默认带有Docker软件包。

Google的PaaS平台及服务产品都已应用Docker,而微软的Azure也对Docker提供支持。

Amazon的AWS EC2 Container也提供对Docker的支持。

Docker的目标是“Build,Ship and Run Any App,Anywhere”,通过对应用组件封装(Packaging)、分发(Distribution)、部署(Deployment)、运行(Runtime)等,实现“一次封装,到处运行”。

Linux容器技术

Docker引擎的基础是Linux容器技术(Linux Containers,LXC)

Linux容器技术最早可追溯到1982年的chroot工具,而其他的容器实现技术包括Solaris Containers、FreeBSD jail、Linux VServer、OpenVZ等。但上述技术都没有集成到主流的Linux内核,而LXC项目则被集成到主流的Linux内核,进而成为Linux系统轻量级容器技术的事实标准。

在LXC基础上,Docker优化容器使用体验,为容器提供管理工具,使用户操作Docker容器如同操作轻量级的虚拟机。

Docker在1.13版本之后,命名规则发生变化,docker也提供ce和ee两种版本。

容器与虚拟机

results matching ""

    No results matching ""