Docker三大核心概念

本篇博客接着上一篇博客:Docker的理解
本文参看书籍《Docker技术入门与实战 第3版》

一.Docker三大核心概念

Docker 大部分的操作都围绕着它的三大核心概念: 镜像(Image)、容器(Container)和仓库(Repository)。

1.1 Docker 镜像

(1)Docker 镜像类似于虚拟机镜像,可以将它理解为一个只读的模板。例如,一个镜像可以包含一个基本的操作系统环境,里面仅安装了Apache 应用程序。可以把它称为一个 Apache 镜像。
(2)镜像是创建 Docker 容器的基础。
(3)通过版本管理和增量的文件系统, Docker 提供了一套十分简单的机制来创建和更新现有的镜像,用户甚至可以从网上下载一个已经做好的应用镜像,并直接使用。

1.2 Docker 容器

(1)Docker 容器类似于一个轻量级的沙箱, Docker 利用容器来运行和隔离应用。
(2)容器是从镜像创建的应用运行实例。它可以启动、开始、停止、删除,而这些容器都是彼此相互隔离、互不可见的。
(3)可以把容器看作一个简易版的 Linux 系统环境(包括 root 用户权限、进程空间、用户空间和网络空间等)以及运行在其中的应用程序打包而成的盒子。
(4)镜像自身是只读的。容器从镜像启动的时候,会在镜像的最上层创建一个可写层。

1.3 Docker 仓库

(1)Docker 仓库类似于代码仓库,是 Docker 集中存放镜像文件的场所。
(2)仓库注册服务器是存放仓库的地方,其上往往存放着多个仓库。每个仓库集中存放某一类镜像,往往包括多个镜像文件,通过不同的标签( tag )来进行区分。
Docker三大核心概念_第1张图片
(3)根据所存储的镜像公开分享与否, Docker 仓库可以分为公开仓库(Public )和私有仓库( Private )两种形式。目前,最大的公开仓库是官方提供的 Docker Hub,其中存放着数量庞大的镜像供用户下载。国内不少云服务提供商(如腾讯云、阿里云等)也提供了仓库的本地源,可以提供稳定的国内访问。

(4)当然,用户如果不希望公开分享自己的镜像文件, Docker 也支持用户在本地网络内创建一个只能自己访问的私有仓库。当用户创建了自己的镜像之后就可以使用 push 命令将它上传到指定的公有或者私有仓库。这样用户下次在另外一台机器上使用该镜像时,只需要将其从仓库上 pull 下来就可以了。可以看出, Docker 利用仓库管理镜像的设计理念与 Git 代码仓库的概念非常相似,实际上 Docker 设计上借鉴了 Git 的很多优秀思想。

你可能感兴趣的:(Docker,docker)