在线客服
扫描二维码
下载博学谷APP
扫描二维码
关注博学谷微信公众号
Docker是什么?大家都清楚在现在这个时代,技术更新迭代发展很快,容器化技术更是发展的一个趋势,今天带大家认识一下应用容器引擎Docker。

一、Docker是什么
Docker 是一个应用的应用容器引擎,基于GO语言并遵从Apache2.0协议开源。让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。
二、Docker与传统虚拟机的对比
传统虚拟机技术是虚拟出一套硬件后,在其上运行一个完整操作系统,在该系统上再运行所需应用进程;而容器内的应用没有自己的内核,而且也没有进行硬件虚拟。因此容器要比传统虚拟机更为轻便。
三、为什么要使用Docker
Docker的镜像提供了除内核外完整的运行时环境,确保了应用运行环境一致性,从而不会再出现“这段代码在我机器上没问题啊”这类问题;-- 一致的运行环境
可以做到秒级、甚至毫秒级的启动时间。大大的节约了开发、测试、部署的时间。--更快速的启动时间
避免公用的服务器,资源会容易受到其他用户的影响。--隔离性
善于处理集中爆发的服务器使用压力;--弹性伸缩,快速扩展
可以很轻易的将在一个平台上运行的应用,迁移到另一个平台上,而不用担心运行环境的变化导致应用无法正常运行的情况。--迁移方便
使用Docker可以通过定制应用镜像来实现持续集成、持续交付、部署。--持续交付和部署
四、Docker的架构
Docker 使用客户端-服务器 (C/S) 架构模式,使用远程API来管理和创建Docker容器。Docker 容器通过 Docker 镜像来创建。容器与镜像的关系类似于面向对象编程中的对象与类。
五、Docker的三个基本概念
1、镜像:
Docker镜像(Image)类似于虚拟机的镜像,可以将他理解为一个面向Docker引擎的只读模板,包含了文件系统。
例如:一个镜像可以完全包含了Ubuntu操作系统环境,可以把它称作一个Ubuntu镜像。镜像也可以安装了Apache应用程序(或其他软件),可以把它称为一个Apache镜像。
2、容器:
镜像和容器的关系,就像Java中的类和实例一样,镜像是静态的定义,容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停等。
3、仓库
镜像构建完成后。可以很容易的在当前宿主主机上运行,但是,如果需要在其他服务器上使用这个镜像,我们就需要一个集中的存储、分发镜像的服务,Docker Registry就是这样的服务。
可能对刚刚入门的小伙伴来说,Docker的概念不是太好理解,不过大家只要先掌握了理论知识,然后在实践中理解概念,往往会有意想不到的效果哦。另外,博学谷开设了Docker课程,有名师带你学习,不怕知识点枯燥难懂。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
学Python需要安装什么软件?Python软件工具大全
工欲善其事必先利其器。初学者在学Python的时候,往往会因为没有好用的软件工具,走了很多弯路。因此一些好用的软件工具,可以极大地提高开发效率,那么学Python需要安装什么软件呢?本文为大家整理了几款常用的Python软件工具。
7081
2019-08-20 09:54:41
学Python为什么要掌握Linux?
Python作为新手友好的开发语言,近年来风头强劲,无论是不断扩大的开发应用领域,还是就本身的语言优势而言,都吸引了不少的学习者。对于刚刚入门Python不久的朋友来说,相信都会有这样的疑问,学Python为什么要掌握Linux?确实Python支持Windows系统,但是学习Linux认识刚需。具体原因分析如下:
7866
2019-11-24 18:52:11
想学Python需要报培训班吗
现在是一个快速发展的社会,许多人都面临就业难,就业竞争大的情况。这时候就有好多人想要选择学习编程语言这项技能。这样也就应运而出了好多的培训机构。但现在又会有许多人有疑惑,学习Python需要去培训吗?什么样的人比较需要进行报班学习呢?想学Python需要报培训班吗?
6472
2020-06-11 15:03:53
带有参数的装饰器怎么使用?
假设当你使用@my_decorator语法时,是在应用一个以单个函数作为参数的一个包裹函数。Python里每个东西都是一个对象且这包括函数,掌握这点我们可以编写一下能返回一个包裹函数的函数。我们需要能自己写出带有参数的装饰器。
4213
2021-12-02 11:30:02
MySQL数据库的基本使用之数据类型和约束
MySQL数据库的基本使用之数据类型和约束,数据类型包含整数类型、浮点数、字符串、日期等。储存在数据库中的所有数据值均为正确的状态,如有不正确数据则称为已丧失数据完整性。
4502
2022-01-11 10:50:33
