Docker简介

1 Docker简介

1.1 什么是虚拟化

虚拟化概念:简单理解是一种资源管理技术;

在计算机中,虚拟化(英语:Virtualization)是一种资源管理技术,是将计算机的各种实体资源,如服务器、网络、内存及存储等,予以抽象、转换后呈现出来,打破实体结构间的不可切割的障碍,使用户可以比原本的组态更好的方式来应用这些资源。

虚拟化常见技术种类:软件虚拟化、硬件虚拟化、内存虚拟化、网络虚拟化(vip)、桌面虚拟化、服务虚拟化、虚拟机;

1.2 什么是Docker

虚拟化技术中有一种是容器技术,而Docker就是一种容器技术

Docker要做的事情是什么呢?目标就是实现轻量级的操作系统虚拟化解决方案;

Docker 的基础是 Linux 容器(LXC)等技术,(在 LXC 的基础上 Docker 进行了进一步的封装,让用户不需要去关心容器的管理,使得操作更为简便。用户操作Docker 的容器就像操作一个快速轻量级的虚拟机一样简单。)

1.3 容器与虚拟机比较

Docker这种虚拟化技术区别于其他传统虚拟技术;Docker 和传统虚拟化方式的不同之处,容器是在操作系统层面上实现虚拟化,直接复用本地主机的操作系统,而传统方式则是在硬件层面实现。

Docker容器架构

Docker的简要架构如上图,从下到上层次依次为:

① Server即服务器硬件/宿主机器,② HOST OS即服务器本身的操作系统,③ Docker Engine即虚拟层或称为Docker引擎或称为Docker软件,④ 上面内容就是基于Docker引擎的二进制库+各种应用软件;

传统虚拟机

传统虚拟机技术以Hypervisor为例的简要架构如上图,从下到上层次依次为:

①server即服务器硬件   ②host os即服务器本身的操作系统  ③Hypervisor本地操作系统之上会安装一个软件 通常称为虚拟层,用来管理虚拟机的软件  ④虚拟层之上,会安装虚拟化的操作系统可以安装很多个,然后虚拟化的仓库,然后再安装应用

总之:Container(Docker容器),在宿主机器、宿主机器操作系统、Docker引擎(即虚拟层),安装应用。

          VM(VMware),在宿主机器、宿主机器操作系统、创建虚拟层、虚拟化的操作系统、虚拟化的仓库、应用;

区别:

传统虚拟机:虚拟出各种硬件如win  linux等虚拟硬件,  虚拟的操作系统与本地操作系统没有直接关系;

                     资源多:就是占用系统资源比较多,虚拟化出的操作系统资源有限;

                     启动速度慢:虚拟操作系统与真的操作系统类似;

                      可以虚拟出各种操作系统,应用可以应用于各种操作系统;

容器:每个容器环境是依赖本机操作系统的,虚拟的环境依赖于本地操作系统;

           资源少:虚拟出的限制较少,与本机是共享关系;

           启动速度快:会很快;

           只能虚拟出linux系统,且应用也只能应用于linux系统;

那么问题来了,Docker没有操作系统,怎么运行程序?可以在Docker中创建一个ubuntu的镜像文件,这样就能将ubuntu系统集成到Docker中,运行的应用就都是ubuntu的应用。

1.4 Docker 组件

1.4.1 Docker服务器与客户端

Docker是C/S架构——客户端+服务端

Docker守护进程就是Docker的服务端,管理Docker容器

Docker客户端负责连接服务端,执行命令

Docker客户端和服务端,可以是同一台机器,也可以远程登录


Docker组件

1.4.2 Docker镜像与容器

镜像是构建Docker的基石。镜像当作容器的“源代码”

容器是基于镜像启动起来的

镜像是Docker生命周期中的构建或者打包阶段,而容器则是启动或者执行阶段。

总之,我们通过镜像构建容器,我们操作是操作容器;

1.4.3 Registry(注册中心)

分为公有和私有:

    公有https://hub.docker.com/

公有页面

私有一般都是公司企业自身的中心;

你可能感兴趣的:(Docker简介)