3.docker学习之docker与虚拟化
虚拟化技术是一个总称,是一系列实现虚拟技术的统称。从广义上来说,虚拟化技术包括了虚拟机技术和容器技术,
所谓虚拟化技术最大的特点就是将一个真实的机器进行虚拟地分割,然后分割出来的部分可以独立使用
有人说:“Docker是虚拟化技术。”
有人却说:“虚拟化与Docker容器之争。”
那么,到底Docker是不是虚拟化技术,如果是,为啥又说“之争?”
其实,准确来说,Docker是一种容器级虚拟化技术。
关于虚拟机,官方的说法是:虚拟机(Virtual Machine)指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。
简单来说:我们通过虚拟机可以把一台硬件划分为多个机器,每个机器都能独立运行。
容器技术也能实现在一台硬件机器上虚拟出多个容器,每个容器中都可以放置一个互相隔离的服务器。所以,我们知道,容器其实也采用的是虚拟的方式进行,只不过,同等条件下,容器技术会比虚拟机技术效率要高,但是容器中没有包含独立的操作系统,虚拟机中包含独立的操作系统,所以每台虚拟机中的功能会比每个容器的功能要多些,正因为虚拟机带有很多东西,所以占的系统资源要大,效率要低些。
所以容器具有简明、轻快等特点
docker运行步骤
Docker是一个C/S类型的架构。一般来说,用户通过client端进行相应操作,然后对应操作指令会传递到server端,然后交由server端的Docker daemon处理
Docker的内部有三个核心组件。
1、Docker images
Docker images也叫做Docker镜像,镜像一般是只读模版,用户不可以直接对其进行写入操作。使用镜像可以很轻松地创建容器。
目的也就是更好的保证数据的安全
2、Docker containers
Docker containers也叫做Docker容器,容器与容器之间互相隔离、互不干扰,容器可以进行被开始、启动、停止、删除等操作。
开发者快速地把自己的应用打包到容器中进行发布
3、Docker registries
Docker registries也叫做Docker仓库,仓库主要是用来下载和上传镜像的,仓库分为公有仓库和私有仓库。