Docker初识

1.1 什么是Docker

Docker是由dotcloud公司在2013年开源的基于go语言实现的开源项目。Docker遵循Apache2.0协议,可以在git上获取相应的源代码。Docker的主要目标是“Build ship and run any app,Anywhere”,达到应用组件级别的“一次封装,到处运行”,这里的应用组件既可以是Web应用也可以是一套数据库服务,甚至是一个操作系统。

1.2 容器

容器有效的将由单个操作系统的资源划分到孤立的组中,以便更好的在孤立的组件平衡有冲突的资源使用需求。Docker容器可以理解为一种沙盒,每个容器内运行一个应用,不同的容器相互隔离,容器之间也可以建立通信机制容器的创建和停止都十分快速,容器自身对资源的需求也十分有限,远低于虚拟机。

1.3 Docker在开发和运维中的优势

1)更快的交付和部署。开发人员可以使用镜像来快速构建一套标准的开发环境;开发完成后,测试和运维人员可以直接使用相同的环境来部署代码。

2)更高效的利用资源。Docker是内核级的虚拟化,可以实现更高的性能

3)更轻松的迁移。Docker容器可以运行在任意平台上

4)更简单的更新。使用Dockerfile,只需要小小的配置修改

5)Docker属于操作系统级虚拟化,内核通过创建多个虚拟的操作系统实例(内核和库)来隔离不同的进程。



特性 容器 虚拟机
启动速度 秒级 分钟级
硬盘使用 一般为M 一般为G
性能 接近原生 弱于
系统支持 单机支持上千个容器 一般几十个
隔离性 安全隔离


posted @ 2018-11-20 07:12  hola荞麦  阅读(157)  评论(0编辑  收藏  举报