docker的三大核心概念是什么

小编 5070

docker的三大核心概念是:1.docker镜像(Image);2. docker容器(container);3. docker仓库(repository)。镜像可以理解为处于静态的只读文件,它是创建容器的先决条件,即容器是镜像的运行实体。而仓库的作用则是存储和分发镜像。

1.docker镜像(Image)

docker镜像类似于虚拟机镜像,可以将其理解为一个只读模板。除了提供容器运行时所需的程序、库、资源、配置等文件外,docker镜像还包含了一些为运行时准备的一些配置参数(如匿名卷、环境变量、用户等)。

镜像是创建docker容器的基础,它可以通过版本管理和增量的文件系统,如Docker Hub。

2.docker容器(container)

docker容器(container)类似于轻量级的沙箱,docker利用容器来运行和隔离应用。

容器是从镜像创建的应用运行实例,可以将其启动、开始、停止、删除,但是所有的容器是相互隔离的,互不可见的,这就提供了一个实体机可以安装多个容器,且很轻量级相对于虚拟机。镜像本身是只读的,容器从镜像启动的时候,docker会在镜像的最上层创建一个可写层,镜像本身保持不变。

3.docker仓库(repository)

docker仓库(repository)类似于代码库,是docker集中存放镜像的场所。实际上,注册服务器是存放仓库的地方,其上往往存放着很多仓库。每个仓库集中存放某一类镜像,往往包括多个镜像文件,通过不同的标签(tag)来进行区分。

根据存储的镜像公开分享与否,docker仓库可以分为公开仓库(Public)和私有仓库(Private)两种形式。目前,最大的公开仓库是Docker Hub,存放了数量庞大的镜像供用户下载,国内的公开镜像包括Docker Pool,可以提供稳定的国内访问,与GitHub类似。

延伸阅读

docker的由来

docker是一个开源项目,诞生于2013 年初,最初是dotCloud 公司内部的一个业余项目。它基于Google 公司推出的Go 语言实现。2013年3月,dotCloud公司的创始人之一,docker之父,28岁的Solomon Hykes正式决定,将docker项目开源。遵从了Apache 2.0 协议,项目代码在GitHub上进行维护。

docker自开源后受到广泛的关注和讨论,以至于dotCloud公司后来都改名为Docker Inc。Redhat已经在其RHEL6.5 中集中支持docker;Google 也在其PaaS产品中广泛应用。

docker项目的目标是实现轻量级的操作系统虚拟化解决方案。docker的基础是Linux 容器(LXC)等技术。在LXC 的基础上docker 进行了进一步的封装,让用户不需要去关心容器的管理,使得操作更为简便。用户操作docker 的容器就像操作一个快速轻量级的虚拟机一样简单。docker可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口(类似iPhone 的app),更重要的是容器性能开销极低。

回复

我来回复
  • 暂无回复内容

注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部