DevOps利器之码头工人入门篇

  

简介

  

什么?

  

码头工人是基于去语言实现的开源容器项目,诞生于2013年年初,由dotCloud公司发起,此公司后改名为码头工人Inc.Docker项目已加入Linux基金会,并遵循Apache2.0协议,代码托管在Github:码头工人源码地址

  

各大操作系统现都支持码头工人,并且最新的Linux发行版RedHat, CentOS, Ubuntu中均已默认带有码头工人软件包。

  

码头工人的构想是要实现“构建、船和运行任何应用程序”,即通过对应用的封装(包装),分发(分布),部署(部署),运行(运行时)生命周期进行管理,达到应用组件级别的“一次封装,到处运行”。这里的应用组件,既可以是一个Web应用,一个编译环境,也可以是一套数据库平台服务,甚至是一个操作系统或集群。

  

基于Linux平台上的多项开源技术,码头工人提供了高效、敏捷和轻量级的容器方案,并支持部署到本地环境和多种主流云平台。可以说,码头工人首次为应用的开发,运行和部署提供了“一站”式的实用解决方案。

  

早期码头工人代码实现是基于LXC (Linux容器,即Linux容器),自0.9版本开始,码头工人开发了libcontainer项目作为更广泛的容器驱动实现。

  

简单地讲,读者可以将码头工人容器理解为一种轻量级的沙盒(sandbox)。每个容器内运行着一个应用,不同的容器相互隔离,容器之间也可以通过网络互相通信。容器的创建和停止十分快速,几乎跟创建和终止原生应用——致;另外,容器自身对系统资源的额外需求也十分有限,远远低于传统虚拟机。很多时候,甚至直接把容器当作应用本身也没有任何问题。

  

为什么?

  
      <李>新型的创建分布式应用程序的方式,快速分发和部署李   <李>通过容器来打包应用,解藕应用和运行平台李   <李>更快速的交付和部署,启动快速,启动和停止可以在妙计实现,节约开发,测试,部署的大量时间李   <李>更高效的资源利用,一台主机上可以运行上千个码头工人容器,运行码头工人不需要额外的虚拟化管理程序(虚拟机管理器,以及管理程序)的支持,码头工人是内核级的虚拟化,可以实现更高级的性能李   <李>更轻松的迁移和扩展,码头工人容器几乎可以在任意的平台上运行,包括物理机,虚
    拟机,公有云,私有云,个人电脑,服务器等李   <李>更简单的更新管理,使用Dockerfile,只需要小小的配置修改就可以实现以前繁琐的更新,提高工作效率,并标准化流程李   <李>码头工人通过类似Git设计理念的操作来方便用户获取,分发和更新应用镜像,存储复用,增量更新   <李>码头工人与传统虚拟机的比较如下图   
  

 DevOps利器之码头工人入门篇

  

如何?   

<强>码头工人运行基本命令和模式:
 DevOps利器之码头工人入门篇

  

<强>码头工人引擎:
 DevOps利器之码头工人入门篇

  

<强>码头工人架构:
 DevOps利器之码头工人入门篇

  

码头工人与虚拟化

  

虚拟化(虚拟化)技术是一个通用的概念,在不同领域有不同的理解。在计算领域,一般指的是计算虚拟化(computingvirtualization),或通常说的服务器虚拟化。维基百科上的定义如下:

  
  

"在计算机技术中,虚拟化是一种资源管理技术,是将计算机的各种实体资源,如服务器,网络,内存及存储等,予以抽象,转换后呈现出来,打破实体结构间的不可切割的障碍,使用户可以用比原本的纽态更好的方式来应用这些资源。”

     

可见,虚拟化的核心是对资源的抽象,目标往往是为了在同一个主机上同时运行多个系
统或应用,从而提高系统资源的利用率,并且带来降低成本,方便管理和容错容灾等好处。

  

<强>码头工人和常见的虚拟机方式的不同之处:
 DevOps利器之码头工人入门篇

  

安装

  

用户可以访问码头工人官网的得到码头工人码头工人官网页面,查看获取码头工人的方式,以及码头工人支持的平台类型目前码头工人支持码头工人引擎,码头工人,码头工人云等多种服务。

DevOps利器之码头工人入门篇