Docker入门系列–Docker前世今生(一)
Docker的前世今生
1、Docker诞生
Docker是dotcloud公司开源的一款产品dotcloud是2010年成立的一家公司,主要基于PAAS平台为开发者提供服务。2013年10月dotcloud公司改名为Docker股份有限公司
2、Docker相关解释
- Linux Container是一种虚拟化技术,可以提供轻量级的虚拟化,以使隔离进程个资源
- Docker是PAAS提供商dotcloud开源的一个基于LXC的高级容器引擎,源代码托管在Github上,基于go语言并遵从Apache2.0协议开源。
- Docker设想是交付运行如同海运,OS如同一个货轮,每一个在OS基础上的软件都如同一个集装箱,用户可以通过标准化手段自由组装运行环境,同时集装箱的内容可以由用户自定义,也可以由专业人员制造
3、什么是容器
- 一种虚拟化方案(依托于Linux内核)
- 操作系统级别的虚拟化
- 只能运行相同或相似内核的操作系统
- 依赖Linux内核特性:Namespacehe和Cgroups
4、docker的目标
- 提供简单轻量的建模方式
- 职责逻辑分离
- 快速高效的开发生命周期
- 鼓励使用面向服务的架构
5、Docker缺点
- 容器的隔离性没有虚拟化
- 共用Linux内核,安全性 有先天缺陷
- SELinux难以驾驭
- 监控容器和容器拍错是挑战
5、docker的使用场景
- 使用docker容器开发,测试,部署服务
- 创建隔离的运行环境
- 搭建测试环境
- 构建多用户的平台服务(paas)基础设施
- 提供软件及服务(saas)应用程序
- 高性能,超大规模的宿主机部署
6、Docker与传统虚拟化相比
7、Docker的构成
- Docker仓库,https://hub.docker.com
Docker registry:docker镜像仓库,用于存放docker镜像的地方。 - Docker自身组件
[1] Docker client:Docker的客户端
[2] DockerServer:Dokcer daemon的主要组成部分,接受用户通过Docker Client发出的请求,并按照响应的路由规则实现路由分发
[3] Docker镜像:Docker镜像运行之后就变成容器(docker run)
[4] Docker Container:docker容器,镜像运行后生成容器