docker是什么语言写的(docker容器的基本概念)

:暂无数据 2026-07-21 11:10:01 :0

docker是什么语言写的(docker容器的基本概念)

这篇文章给大家聊聊关于docker是什么语言写的,以及docker容器的基本概念对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。

本文目录

docker容器的基本概念

1.Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源。

Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。

容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。

2.Docker 的优点

Docker 是一个用于开发,交付和运行应用程序的开放平台。Docker 使您能够将应用程序与基础架构分开,从而可以快速交付软件。借助 Docker,您可以与管理应用程序相同的方式来管理基础架构。通过利用 Docker 的方法来快速交付,测试和部署代码,您可以大大减少编写代码和在生产环境中运行代码之间的延迟。

1、快速,一致地交付您的应用程序

Docker 允许开发人员使用您提供的应用程序或服务的本地容器在标准化环境中工作,从而简化了开发的生命周期。

容器非常适合持续集成和持续交付(CI / CD)工作流程,请考虑以下示例方案:

您的开发人员在本地编写代码,并使用 Docker 容器与同事共享他们的工作。

他们使用 Docker 将其应用程序推送到测试环境中,并执行自动或手动测试。

当开发人员发现错误时,他们可以在开发环境中对其进行修复,然后将其重新部署到测试环境中,以进行测试和验证。

测试完成后,将修补程序推送给生产环境,就像将更新的镜像推送到生产环境一样简单。

2、响应式部署和扩展

Docker 是基于容器的平台,允许高度可移植的工作负载。Docker 容器可以在开发人员的本机上,数据中心的物理或虚拟机上,云服务或混合环境中运行。

Docker 的可移植性和轻量级的特性,还可以使您轻松地完成动态管理的工作负担,并根据业务需求指示,实时扩展或拆除应用程序和服务。

3、在同一硬件上运行更多工作负载

Docker 轻巧快速。它为基于虚拟机管理程序的虚拟机提供了可行、经济、高效的替代方案,因此您可以利用更多的计算能力来实现业务目标。Docker 非常适合于高密度环境以及中小型部署,而您可以用更少的资源做更多的事情。

什么是docker容器技术

docker容器技术指Docker是一个由GO语言写的程序运行的“容器”(Linuxcontainers,LXCs)

Docker基础

Docker 是一个开源的应用容器引擎,基于Go 语言 并遵从 Apache2.0 协议开源。

Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。

容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。

Docker最早是在Ubuntu 12.04上开发实现的;

Red Hat则从RHEL6.5开始对Docker进行支持。

而后Windows和Mac上也相应有了Docker版本支持。

在Docker容器技术出现之前,Linux上是已经有一个docker的工具的,但此docker非彼Docker。

这个docker是一个窗口停靠栏程序,就像苹果的Mac系统中的dock那个程序一样的一个工具。
为了区分开来,我们以Docker和docker来进行区分。
Docker:指容器技术。
docker:指窗口停靠栏程序。

Docker技术出来后,因为Linux系统上已经有了docker这个工具,所以Docker软件名也不能跟人家重名啊,要不然没办法安装。

由于那个时候Docker的官网是docker.io,所以就在软件名称上加了io的后缀,在Ubuntu中就是docker.io,在CentOS中就是docker-io。

但是虽然软件名跟docker程序不一样了,但软件安装后的操作命令还是一样的,都是docker的这个命令,所以要安装Docker软件,要先看看有没有安装了那个停靠栏程序docker,有的话要先卸载才行,要不然执行的命令是不对的。

这个时期要安装Docker,就要用docker加io后缀的方式来安装。

Docker容器使用docker.io和docker-io为软件名,主要是前期的一段时间。

后来随着Docker的发展,软件包名改成了docker-engine,不同系统中名称达到了统一。

再后来,随着Docker技术的火爆,在征得docker停靠栏程序作者同意下,原先的停靠栏程序docker名称改掉了,改成了wmdocker,Docker容器技术的软件包名才正式成了docker这个名称,Docker软件包的名称又得到了一次完全的统一。

到Docker1.13.1版本之前,Docker软件包的名称有两次变化,从docker-io(docker.io)到docker-engine,再到docker。

Docker发展到1.13.1版本号后,Docker公司把Docker分成了社区版(免费)Docker CE和商业版(付费)Docker EE两种形式,并且版本号命名方式也改了,以前是那种常用的版本号命令方式,比如0.1、0.2、1.0之类的,现在分社区和商业版后,版本号是“年.月”的形式命名的,比如2019年10月发布的,版本号就是19.10。

所以在Docker1.13.1之后,直接是Docker-ce 17.03.0版本了,也就是2017年03月发布的。

现在要安装最新版的Docker软件包,就是使用docker-ce这个名称了,如果是商业版的就是docker-ee了。

目前docker的默认存储引擎为overlay2,不同的存储引擎需要相应的文件系统支持,如需要磁盘分区的时候传递d-type稳健分层功能,即需要传递内核参数并开启格式化磁盘的时候指定的功能。
存储引擎的选择文档

AUFS

AUFSAnotherUnionFileSystem是一种UnionFS。V2版本后更名为 advanced multi‐layered unification fileystem,即高级多层统一文件系统。所谓UnionFS就是把不同物理位置的目录合并mount到同一个目录中。简单来说就是支持将不同目录挂载到同一个虚拟文件系统下的文件系统。这种系统可以一层一层的叠加修改文件。无论底下有多少层都是只读,只有最上层的文件系统是可读写。当需要修改一个文件时,AUFS创建该文件的一个副本。使用CoWCopy-on-Write将文件从只读层复制到可写层进行修改,结果也保留在可写层、在Docker中。底下的制度层就是image,可写层就是Container。

Overlay

一种Union FS文件系统,Linux内核3.18后支持

Overlay2

overlay的升级版,到目前为止,所有Linux发行版推荐使用的存储类型

devicemapper

是CentOS和RHEL的推荐存储驱动程序,但是依赖于direct-lvm,存在空间受限的问题,虽然可以通过后期配置解决;因为之前的内核版本不支持overlay2(集中在Centos/RHEL7.2之前版本);但当前较新版本Centos和RHEL现已经支持overlay2。

***隐藏网址***

zfs/btrfs(Oracle-2007)

目前没有广泛应用;这些文件系统允许使用高级选项,例如创建“快照”,但需要更多的维护和设置。并且每一个都依赖于正确配置的后备文件系统。

vfs

用于测试环境,适用于无法适用Cow文件系统的情况。此存储驱动程序的性能很差,通常不建议在生产中使用。

1)overlay存储驱动程序已在Docker Engine-Enterprise 18.09中弃用,并将在以后的版本中删除。建议将overlay存储驱动程序的用户迁移到overlay2。

2)devicemapper存储驱动程序已在Docker Engine 18.09中弃用,并将在以后的版本中删除。建议将devicemapper存储驱动程序的用户迁移到overlay2。

建议使用overlay2存储驱动程序。首次安装Docker时,默认情况下使用overlay2。早期版本,默认情况下会使用aufs。如果要在新版本中使用aufs,则需要对其配置,并且可能需要安装其他软件包,例如linux-image-extra。

对于Docker,支持文件系统是所在的文件系统 /var/lib/docker/。一些存储驱动程序仅适用于特定的后备文件系统。

配置 Docker 存储驱动非常简单,只需要修改配置文件即可。

怎么理解Docker技术

Docker可以理解为是一个集装箱(容器),但事实上它本身并不是容器,它是创建容器的工具,是应用容器引擎。Docker是世界领先的软件容器平台。Docker使用Google公司推出的Go语言进行开发实现,基于Linux内核的cgroup,namespace,以及AUFS类的UnionFS等技术,对进程进行封装隔离,属于操作系统层面的虚拟化技术。Docker能够自动执行重复性任务,例如搭建和配置开发环境,从而解放了开发人员以便他们专注在真正重要的事情上:构建杰出的软件。
时速云是一家全栈云原生技术服务提供商,提供云原生应用及数据平台产品,其中涵盖容器云PaaS、DevOps、微服务治理、服务网格、API网关等。大家可以去体验一下。
希望能给您提供帮助,可以给个大大的赞不。

什么是docker

docker是一个开源项目,诞生于2013年初,最初是dotCloud公司内部的一个业余项目。它基于Google公司推出的GO语言实现,项目后来加入了Linux基金会,遵从了apache2.0协议,项目代码在GitHub上进行维护。
docker自开源后受到广泛的关注和讨论,以至于dotcloud公司后来都改名为docker lnc。Redhat已经在其rhel6.5中集中支持docker,Google也在其PaaS产品中广泛应用。
docker项目的目标是实现轻量级的操作系统虚拟化解决方案,docker的基础是Linux容器等技术。

关于docker是什么语言写的和docker容器的基本概念的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

docker是什么语言写的(docker容器的基本概念)

本文编辑:admin

本文相关文章:


discovering(discover是什么意思)

discovering(discover是什么意思)

大家好,如果您还对discovering不太了解,没有关系,今天就由本站为大家分享discovering的知识,包括discover是什么意思的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!

2026年10月9日 04:40

sql2000怎么新建查询(sql server 新建查询功能怎么实现)

sql2000怎么新建查询(sql server 新建查询功能怎么实现)

“sql2000怎么新建查询”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看sql2000怎么新建查询(sql server 新建查询功能怎么实现)!

2026年10月5日 14:10

local是什么文件夹(C:\Users\hp\AppData\Local这文件夹是做什么用的)

local是什么文件夹(C:\Users\hp\AppData\Local这文件夹是做什么用的)

大家好,如果您还对local是什么文件夹不太了解,没有关系,今天就由本站为大家分享local是什么文件夹的知识,包括C:\Users\hp\AppData\Local这文件夹是做什么用的的问题都会给大家分析到,还望可以解决大家的问题,下面我

2026年10月3日 21:50

undergraduate怎么读(这3个英语yawn ;undergraduate; teenager ;怎么读的)

undergraduate怎么读(这3个英语yawn ;undergraduate; teenager ;怎么读的)

各位老铁们,大家好,今天由我来为大家分享undergraduate怎么读,以及这3个英语yawn ;undergraduate; teenager ;怎么读的的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支

2026年10月2日 03:30

microsoft silverlight v3(Microsoft Silverlight安装失败)

microsoft silverlight v3(Microsoft Silverlight安装失败)

大家好,如果您还对microsoft silverlight v3不太了解,没有关系,今天就由本站为大家分享microsoft silverlight v3的知识,包括Microsoft Silverlight安装失败的问题都会给大家分析到

2026年9月28日 22:50

win10如何安装activex控件(win10怎么安装Adobe Flash Player Activex 我没收到微软的补丁 结果Flash没法用了)

win10如何安装activex控件(win10怎么安装Adobe Flash Player Activex 我没收到微软的补丁 结果Flash没法用了)

这篇文章给大家聊聊关于win10如何安装activex控件,以及win10怎么安装Adobe Flash Player Activex 我没收到微软的补丁 结果Flash没法用了对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。

2026年9月26日 17:40

mousewithoutborders(mouse without borders在win7不能启动)

mousewithoutborders(mouse without borders在win7不能启动)

今天给各位分享mouse without borders在win7不能启动的知识,其中也会对mouse without borders在win7不能启动进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

2026年9月19日 14:10

bootstrapper已停止工作(打开steam的时候突然蹦出steam client bootstrapper 已停止工作是怎么回事)

bootstrapper已停止工作(打开steam的时候突然蹦出steam client bootstrapper 已停止工作是怎么回事)

大家好,今天小编来为大家解答以下的问题,关于bootstrapper已停止工作,打开steam的时候突然蹦出steam client bootstrapper 已停止工作是怎么回事这个很多人还不知道,现在让我们一起来看看吧!

2026年9月7日 03:20

sql server2008支持什么系统(sql server 2008 都可以安装在什么操作系统中)

sql server2008支持什么系统(sql server 2008 都可以安装在什么操作系统中)

本篇文章给大家谈谈sql server2008支持什么系统,以及sql server 2008 都可以安装在什么操作系统中对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

2026年9月5日 23:10

assertequals断言的使用(python断言assertequals是什么意思)

assertequals断言的使用(python断言assertequals是什么意思)

大家好,assertequals断言的使用相信很多的网友都不是很明白,包括python断言assertequals是什么意思也是一样,不过没有关系,接下来就来为大家分享关于assertequals断言的使用和python断言asserteq

2026年9月4日 09:30

更多文章:


teammate(teammate,company,partner)

teammate(teammate,company,partner)

各位老铁们,大家好,今天由我来为大家分享teammate,以及teammate,company,partner的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我们开始吧

2026年10月11日 06:10

javascript arraybuffer(javascript可以把base64编码转换成二进制代码吗求示例代码!)

javascript arraybuffer(javascript可以把base64编码转换成二进制代码吗求示例代码!)

其实javascript arraybuffer的问题并不复杂,但是又很多的朋友都不太了解javascript可以把base64编码转换成二进制代码吗求示例代码!,因此呢,今天小编就来为大家分享javascript arraybuffer的

2026年10月11日 04:00

text函数公式(excel中round和text函数的区别是什么)

text函数公式(excel中round和text函数的区别是什么)

“text函数公式”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看text函数公式(excel中round和text函数的区别是什么)!

2026年10月11日 03:50

pascal编程软件(介绍一下pascal语言!)

pascal编程软件(介绍一下pascal语言!)

大家好,如果您还对pascal编程软件不太了解,没有关系,今天就由本站为大家分享pascal编程软件的知识,包括介绍一下pascal语言!的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!

2026年10月11日 02:40

google chrome打不开(chrome浏览器打不开怎么回事 浏览器打不开的处理方法)

google chrome打不开(chrome浏览器打不开怎么回事 浏览器打不开的处理方法)

本篇文章给大家谈谈google chrome打不开,以及chrome浏览器打不开怎么回事 浏览器打不开的处理方法对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了

2026年10月11日 02:00

websocket整合springboot(Springboot整合Websocket遇到的坑)

websocket整合springboot(Springboot整合Websocket遇到的坑)

大家好,websocket整合springboot相信很多的网友都不是很明白,包括Springboot整合Websocket遇到的坑也是一样,不过没有关系,接下来就来为大家分享关于websocket整合springboot和Springbo

2026年10月11日 01:40

小米官方首爆miui14(miui14耗电严重官方回应)

小米官方首爆miui14(miui14耗电严重官方回应)

各位老铁们好,相信很多人对小米官方首爆miui14都不是特别的了解,因此呢,今天就来为大家分享下关于小米官方首爆miui14以及miui14耗电严重官方回应的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!

2026年10月11日 00:40

drawerlayout(android 怎样让drawerlayout设置的侧滑菜单的内容充满屏幕)

drawerlayout(android 怎样让drawerlayout设置的侧滑菜单的内容充满屏幕)

本篇文章给大家谈谈drawerlayout,以及android 怎样让drawerlayout设置的侧滑菜单的内容充满屏幕对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

2026年10月10日 19:20

xor四位数怎么运算(单片机怎样用C语言实现4个数字间的异或)

xor四位数怎么运算(单片机怎样用C语言实现4个数字间的异或)

大家好,今天小编来为大家解答以下的问题,关于xor四位数怎么运算,单片机怎样用C语言实现4个数字间的异或这个很多人还不知道,现在让我们一起来看看吧!

2026年10月10日 17:50

perl数组中最多的元素(用perl实现,得到一个数组中重复次数最多的元素)

perl数组中最多的元素(用perl实现,得到一个数组中重复次数最多的元素)

其实perl数组中最多的元素的问题并不复杂,但是又很多的朋友都不太了解用perl实现,得到一个数组中重复次数最多的元素,因此呢,今天小编就来为大家分享perl数组中最多的元素的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧

2026年10月10日 17:00

最近更新

frontpage的主要功能(frontpage是什么)
2026-10-11 08:40:18 浏览:0
ideapad15alc7能玩什么游戏(联想ideapad15可以玩刺客信条启示录吗)
2026-10-11 08:10:05 浏览:0
me是国内域名吗(me域名的概况)
2026-10-11 07:50:35 浏览:0
vivoiqoo9发布会(vivoiqoo9pro什么时候上市)
2026-10-11 07:20:22 浏览:0
热门文章

打印机m7400(m7400打印机清零方法)
2026-08-29 07:50:01 浏览:5
acrobat各版本区别(Acrobat XI Pro与 Acrobat PRO DC什么区别)
2026-08-29 22:30:20 浏览:2
联想y510p怎么升级(联想y510p换cpu)
2026-08-17 03:30:04 浏览:2
标签列表