代码改变世界

Docker学习1--OverView

2016-05-03 14:09  Qin奋  阅读(205)  评论(0)    收藏  举报

1. Docker 是什么

  Docker是一个能够把开发的应用程序自动部署到容器的开源引擎。Docker在虚拟化的容器执行环境中增加了一个应用程序部署引擎。

2. Docker的作用

  2.1提供一个简单,轻量的建模方式。Docker依赖 写时复制 copy-on-write模型。

  2.2职责的逻辑分离。开发人员只需要关心容器中运行的应用程序,运维只需要关心如何管理容器。Docker设计的目的就是要加强开发人员写代码时的开发环境与应用

     程序要部署的生产环境的一致性,从而降低那种“开发时一切正常,肯定是运维的问题”的风险。

  2.3Docker的目标之一就是缩短代码从开发,测试到部署,上线运行的周期,让你的应用程序具备可移植性,易于构建,并易于协作。

  2.4Docker鼓励面向服务的架构和微服务架构。Docker推荐单个容器只运行一个应用程序或进程。

3.Docker的核心组件

  3.1Docker客户端和服务器。Docker是一个C/S架构程序。Docker提供一个命令行以及一整套RESTFUL API。

  3.2Docker镜像

  3.3Registry

  3.4Docker容器

4.Docker的应用场景 p6

  4.1 快速构建一个应用服务器,一个消息总线,一套实用工具,一个持续集成 CI 测试环境或者任意一种程序,服务或工具。

  4.2 加速本地开发和构建流程。容器可以在开发环境中构建,然后轻松地提交到测试环境中,并最终进入生产环境

  4.3能够让独立服务或应用程序在不同的环境中,得到相同的运行结果。在SOA和微服务架构中尤其重要

  4.4用Docker创建隔离的环境来进行测试。

  4.5构建一个多用户的平台即服务PaaS基础设施

  4.6为开发,测试,教学提供一个轻量级的独立沙盒环境。