问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

Docker是啥?看完这篇理解并使用Docker

发布网友 发布时间:2024-09-03 19:32

我来回答

1个回答

热心网友 时间:2024-10-13 15:13

Docker是什么?输入“Docker”后,翻译显示为“码头工人”,没错!码头工人搬运的是集装箱,那么Docker操作的也是集装箱。这个集装箱静态而言就是一个应用镜像文件,动态而言,就是一个容器。

Docker从狭义上讲是一个进程,广义上讲是一个虚拟容器,其实是应用容器。Docker进程与普通进程没有区别,它只是一个普通的应用进程,用于操作镜像文件。因此,Docker进程+构建的应用镜像文件等于Docker容器。本文所有讲到的Docker都是指Docker容器。

接下来,我们首先明确几个Docker重要的基本概念:镜像、容器、仓库。镜像(Docker images)类似于VM虚拟机中的快照,但比快照轻量化。镜像可以理解为文件夹,我们可以通过ID或易识别的名字+tag来确认唯一的目标镜像。ImagesID是一个64位字符,但通常使用前12位就足够区分了。

容器(Docker containers)可以从镜像中创建,就像从快照中创建虚拟机,但更轻量,启动更快。应用在容器中运行。打个比方,你首先下载了一个Ubuntu的镜像,然后安装mysql和Django应用及其依赖,完成对Ubuntu镜像的修改,生成了一个个人觉得非常完美的应用镜像!然后把这个镜像分享给大家使用,大家通过这个镜像就生成一个容器。容器启动后就会运行Django服务。

容器是一个独立的封闭的集装箱,但需要对外提供服务。因此,Docker允许公开容器的特定端口,在启动Docker时,我们可以将容器的特定端口映射到宿主机上的任意端口。如果几个服务都需要80端口,那么容器的对外端口是80,但映射到宿主机上就是任意端口,就不会产生冲突,因此不需要通过代理来解决冲突。

仓库(Docker registries)用于存放镜像,有公有和私有之分。公有仓库Docker hub提供了许多镜像文件,可以直接拉取运行。你也可以上传自己的镜像到Docker hub。同时,你也可以自己搭建私有仓库用于团队项目管理。

结合前面介绍的基本概念,我们可以将Docker的几个概念大致串起来,了解它们是如何运作的,也就是Docker的生命周期。主要是三步走:1、开发构建镜像并将镜像push到Docker仓库;2、测试或运维从Docker仓库拷贝一份镜像到本地;3、通过镜像文件开启Docker容器并提供服务。

为何要用Docker?它能干些什么?这要从目前软件行业的痛点来讲起。软件更新发布及部署低效,过程繁琐且需要人工介入;环境一致性难以保证;不同环境之间迁移成本太高。有了Docker可以很大程度解决这些问题。

Docker提供了一种开发环境的管理办法,与测试人员保证了环境的同步,于运维人员提供了可移植的标准化部署流程。所以,Docker能干些什么?总结如下:构建容易分发简单;隔离应用解除依赖;快速部署测完就销。

Docker是个进程级的轻量化虚拟机,与传统的虚拟机VM有啥区别呢?Docker这个虚拟机超级轻量级,仅仅是一个进程而已。与传统的虚拟机VM有着巨大的差别。区别看下图:

从Docker依赖的底层技术来看,Docker原生态不能直接在Windows平台上运行,只支持Linux系统,因为Docker依赖Linux kernel三项最基本的技术:namespaces充当隔离的第一级,是对Docker容器进行隔离;Cgroups是容器对使用的宿主机资源进行核算并限制的关键功能;union FS主要是对镜像(image)这一块作支持,采用copy-on-write技术,让大家可以共用某一层,对于某些差异层的话就可以在差异的内存存储。

Libcontainer是一个库,是对上面这三项技术做一个封装。Docker engine用来控制容器container的运行,以及镜像文件的拉取。

Docker安装通过脚本的方式安装Docker,非常简单。1、获取最新的Docker安装包;2、启动Docker后台服务;3、验证Docker安装成功;4、获取镜像。

Docker的使用主要从“增删查”几方面来说说。查看本地已有的镜像,运行一个镜像,即启动一个容器;拉取指定的镜像文件;查看所有的容器;查看镜像/容器的具体信息;进入容器;删除容器。

如何用Docker完成持续集成、自动交付、自动部署?Docker没有持续集成、自动交付、自动部署的功能,但它们都是依赖Docker的。Docker是这些流程实现的基础。

总结:Docker具有超轻量化,但不建议一台机器上部署太多的应用,同时部署时一定要差异化部署,即将大量计算、内存需求大、IO操作频繁的对系统资源需求不一致的部署到同一台宿主机上。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
西宁出发经甘南、川西到云南自驾游最佳路线 有没有哪些摇滚比较好的女歌手? 王红都唱歌哪些歌曲? 王红是李春波的老婆吗? 周五买的基金周一有收益嘛? 成语:过隙白驹是什么意思?有什么样的典故和故事? 如何评价华语乐坛王菲,林忆莲,李玟,张惠妹,那英的唱功地位 如何评价王菲和李玟的性格对比?人生阅历有多大的不同? 李玟去世:广告语 ldquo 大家好才是真的好 rdquo 是不是李玟的作品? 地脚线用什么颜色的好 地脚线和什么颜色搭配 如何用Excel批量删除指定内容? 为什么一吃辣椒肚子疼拉肚子 每次吃点辣椒就拉肚子怎么办 吃辣椒肚子疼吃什么药 肺叶上的磨玻璃结节是什么 右肺上叶磨玻璃影是什么意思 丽芙泰勒演过电影 匈牙利人最后的游牧记忆——霍尔托巴吉国家公园 私人老板不给工资怎么讨要 夏天的黑色裙子上有白色的胶怎么才能洗掉 如何清除黑色裙子上的白色污渍 ...地点:公共汽车上、写一篇不少于600字的作文。 沉锚效应告诉我们道理 沉锚效应锚定效应概述 如何理解「沉锚效应」,生活中有哪些应用实例? 沉锚效应简介 自己的亲儿子在生死关头父母什么都不管百年以后需要管他们吗?_百度知 ... 关头是什么意思? 专硕的控制工程,能考选调生吗?或者能报考跟学硕的控制科学与工程一... 专硕应届生可以考选调生吗 废旧电风扇有什么妙用 废电风扇罩的再利用,找到回答了吗 迎组词有哪些词语? 无内嵌字幕的美剧资源. 哪些药物用了之后再饮酒会引起心脏跳动过快血压过低? 怎样绑定学生校园卡? 看down是什么意思? 中国工商银行转帐出现 down 高中生看是诗经注析好还是诗经译注好 诗经注析编者简介 扫地机器人价格一般是多少钱啊? 科沃斯机器人吸尘器多少钱 科沃斯扫地机器人和小米扫地机器人哪个好 华为手机总是出现请勿遮挡屏幕的原因是什么? ...我的车辆出租我是出租车在青海覀宁发到什么网站好呢 有事早上想租车去个地方可以打出租车公司电话租吗或者别的?就只有我... 我有辆江淮(康铃2)的卡车想租出去?有哪些途径?可以将出租信息挂在什么网... 现有7900元,怎么配置计算机整机啊,求大神解答,急用 德国垃圾焚烧的工业炉渣量是多少 垃圾焚烧工业炉渣如何处理