# 1.docker解决的问题 * 解决虚拟化问题。 * 解决运行环境配置问题 * 弹性扩容 * 代码流水线管理 # 2.应用场景 1. Web 应用的自动化打包和发布。 2. 自动化测试和持续集成、发布。 3. 在服务型环境中部署和调整数据库或其他的后台应用。 4. 从头编译或者扩展现有的 OpenShift 或 Cloud Foundry 平台来搭建自己的 PaaS 环境。 # 3.docker的架构设计原理 ## 1.docker三大核心要素 1. 仓库 --- 存放镜像文件 2. 镜像 --- 类似于安装包,描述运行所需要的环境配置和依赖 来源 * 自建创建的dockerfile * docker hub仓库下载 3. 容器 --- 运行镜像文件,独立的IP和网络信息,虚拟化一个linux系统 ## 2.docker架构图 ![image-20210705092042263](../../照片/image-20210705092042263.png) # 4.容器与虚拟机的区别 ![image-20210705092333874](../../照片/image-20210705092333874.png) ![image-20210705092429027](../../照片/image-20210705092429027.png) 虚拟机在硬件级别虚拟化 docker在Linux系统级别虚拟化