(一)Docker开篇:Docker介绍、安装、镜像加速
(一)Docker开篇:Docker介绍、安装、镜像加速
1. 什么是Docker
1.1 百科
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。
1.2 适合人员
运维工程师及后端开发人员。
Docker是开发人员和系统管理员 使用容器开发,部署和运行应用程序的平台。使用Linux容器部署应用程序称为容器化。容器不是新的,但它们用于轻松部署应用程序。容器化越来越受欢迎。
1.3 容器
- 灵活:即使是最复杂的应用也可以集装箱化。
- 轻量级:容器利用并共享主机内核。
- 可互换:您可以即时部署更新和升级。
- 便携式:您可以在本地构建,部署到云,并在任何地方运行。
- 可扩展:您可以增加并自动分发容器副本。
- 可堆叠:您可以垂直和即时堆叠服务。
2. Docker和虚拟机区别
传统虚拟机 | Docker容器 | |
---|---|---|
磁盘占用 | 几个GB到几十个GB左右 | 几个GB到几十个GB左右 |
CPU内存占用 | 虚拟操作系统非常占用CPU和内存 | Docker引擎占用极低 |
启动速度 | (从开机到运行项目)几分钟 | (从开启容器到运行项目)几秒 |
安装管理 | 需要专门的运维技术 | 安装、管理方便 |
应用部署 | 每次部署都费时费力 | 从第二次部署开始轻松简捷 |
耦合性 | 多个应用服务安装到一起,容易互相影响 | 每个应用服务一个容器,达成隔离 |
系统依赖 | 五 | 需求相同或相似的内核,目前推荐是Linux |
3. Docker 的核心
- 镜像: 一个镜像代表一个应用环境,他是一个只读的文件,如 mysql镜像,tomcat镜像,nginx镜像等
- 容器: 镜像每次运行之后就是产生一个容器,就是正在运行的镜像,特点就是可读可写
- 仓库: 用来存放镜像的位置,类似于maven仓库,也是镜像下载和上传的位置
- dockerFile: docker生成镜像配置文件,用来书写自定义镜像的一些配置
- tar: 一个对镜像打包的文件,日后可以还原成镜像