前言
容器是应用走向云端之后必然的发展趋势.
弹性架构(比如微服务)
Google、微软、亚马逊、腾讯、阿里、京东和新浪.
无服务器计算服务
各家的云服务是相对割裂的
Google云服务 亚马逊AWS 阿里云 腾讯云
什么是Docker
开源的应用容器引擎 轻量级的、可移植的、自给自足的容器
软件集装箱化平台
构建应用程序,将其依赖关系一起打包到一个容器中,然后这容器就很容易运送到其他的机器上进行运行, 而且非常易于装载、复制、移除,非常适合软件弹性架构
Docker VS 虚拟机
基本概念
镜像:一个特殊的文件系统
镜像实际是由多层文件系统联合组成 Union FS
容器:镜像运行时的实体
镜像(Image)和容器(Container)的关系,就像是面向对象程序设计中的类和实例一样.
容器的实质是进程,但与直接在宿主执行的进程不同,容器进程运行于属于自己的独立的命名空间。
容器存储层
数据卷(Volume)
隔离性、可移植性、灵活性、可伸缩性和可控性
仓库:集中存放镜像文件的地方
<仓库名>:<标签>
Docker Hub
主要应用场景
简化配置
代码流水线(Code Pipeline)管理
提高开发效率
开发环境尽量贴近生产环境 快速搭建开发环境
隔离应用
要降低成本而进行服务器整合
一个整体式的应用拆分成松耦合的单个服务(比如微服务架构)
应用之间的兼容性
调试能力
容器设置检查点、设置版本和查看两个容器之间的差别