1、Docker是什么
- Docker一把瑞士军刀,让Devops真正落地于实践。
- Docker是一个开源的应用容器引擎。
- 诞生于2013年初,基于Go语言实现。
- Docker可以让开发者打包他们的应用以及依赖包到一个轻量级,可移植的容器中,然后发布到任何流行的Linux机器上。
- 容器是完全适应沙箱机制,相互隔离。
- 容器性能开销极低
- Docker从17.03版本之后分为CE(Community Edition:社区版)和EE(Enterprise Edition:企业版)
- 一种操作系统级的虚拟化技术,依赖于Linux内核特性:Namespace(资源隔离)和Cgroups(资源限制)
- 一个简单的应用程序打包工具
2、Docker设计目标
提供简单的应用程序打包工具 开发人员和运维人员职责逻辑分离 多环境保存一致性
3、Docker基本组成
Docker Client:客户端
Docker Daemon:守护进程
Docker Images:镜像
Docker Container:容器
Docker Registry:镜像仓库
4、容器与虚拟机对比
Container VM
启动速度 秒级 分钟级
运行性能 接近原生 5%左右损失
磁盘占用 MB GB
数量 成百上千 一般几十台
隔离性 进程级别 系统级(更彻底)
操作系统 只支持Linux 几乎所有
封装程度 只打包项目代码和依赖关系,共享宿主机内核 完整的操作系统
5、Docker应用场景
- 应用程序打包和发布
- 应用程序隔离
- 持续集成
- 部署微服务
- 快速搭建测试环境
- 提供Paas产品(平台即服务)
文档更新时间: 2021-03-17 18:55 作者:xtyang