时间:2019-07-31 14:33:50 作者:johnnyl 浏览量:55
大家好,近期小编发现网络上很多关于Docker的介绍,下面是小编整理出来的Docker的一些入门基础知识。
简介
什么是Docker
Docker 是一个开源项目,诞生于 2013 年初,开始是 dotCloud 公司内部的一个业余项目。它根据 Google 公司推出的 Go 言语完结。 项目后来加入了 Linux 基金会,遵从了 Apache 2.0 协议,项目代码在 GitHub 上进行维护。
Docker 自开源后遭到广泛的关注和评论,以至于 dotCloud 公司后来都改名为 Docker Inc。RedHat现已在其 RHEL6.5 中集中支撑 Docker;Google 也在其 PaaS 产品中广泛运用。
Docker 项目的方针是完结轻量级的操作体系虚拟化解决方案。 Docker 的基础是 Linux 容器(LXC)等技能。
在 LXC 的基础上 Docker 进行了进一步的封装,让用户不需要去关心容器的办理,使得操作更为简便。用户操作 Docker 的容器就像操作一个快速轻量级的虚拟机相同简略。
下面的图片比较了 Docker 和传统虚拟化方法的不同之处,可见容器是在操作体系层面上完结虚拟化,直接复用本地主机的操作体系,而传统方法则是在硬件层面完结。
为什么要用Docker
作为一种新式的虚拟化方法,Docker 跟传统的虚拟化方法比较具有很多的优势。
首先,Docker 容器的发动能够在秒级完结,这比较传统的虚拟机方法要快得多。 其次,Docker 对体系资源的运用率很高,一台主机上能够同时运转数千个 Docker 容器。
容器除了运转其间运用外,根本不耗费额定的体系资源,使得运用的功能很高,同时体系的开支尽量小。传统虚拟机方法运转 10 个不同的运用就要起 10 个虚拟机,而Docker 只需要发动 10 个阻隔的运用即可。
具体说来,Docker 在如下几个方面具有较大的优势。
更快速的交付和布置
对开发和运维(devop)人员来说,最期望的就是一次创立或装备,能够在恣意当地正常运转。
开发者能够运用一个规范的镜像来构建一套开发容器,开发完结之后,运维人员能够直接运用这个容器来布置代码。 Docker 能够快速创立容器,快速迭代运用程序,并让整个进程全程可见,使团队中的其他成员更容易理解运用程序是如何创立和工作的。 Docker 容器很轻很快!容器的发动时刻是秒级的,很多地节省开发、测试、布置的时刻。
更高效的虚拟化
Docker 容器的运转不需要额定的 hypervisor 支撑,它是内核级的虚拟化,因此能够完结更高的功能和效率。
更轻松的迁移和扩展
Docker 容器简直能够在恣意的平台上运转,包含物理机、虚拟机、公有云、私有云、个人电脑、服务器等。 这种兼容功能够让用户把一个运用程序从一个平台直接迁移到别的一个。
更简略的办理
运用 Docker,只需要小小的修正,就能够替代以往很多的更新工作。一切的修正都以增量的方法被分发和更新,然后完结主动化而且高效的办理。
对比传统虚拟机总结
Docker的简介及与SSH连接图1
装置Docker
本来打算在CentOS6上装置Docker,最终因为CentOS6上自带的kernel版别太低导致Docker发动失败而放弃(kernel升级太繁琐)。
Docker的简介及与SSH连接图2
下面运用CentOS7装置Docker,本人采用虚拟机的方法来装置,装置好的虚拟机必须保证能访问外网。
CentOS7 体系 CentOS-Extras 库中已带 Docker,能够直接装置:
$ sudo yum install docker
装置之后发动 Docker 服务,并让它随体系发动主动加载:
$ sudo service docker start$ sudo chkconfig docker on
获取镜像
能够运用 docker pull 指令来从库房获取所需要的镜像。