Docker核心概念

Docker有三大核心概念:镜像Image)、容器Container)、仓库Repository

1、镜像Image

Docker镜像 是我们创建和运行Docker容器的基础,它类似于虚拟机的镜像,但其与ISO等打包文件可大不相同!它实际上是一个特殊的文件系统。它包含了应用程序运行时的整个系统环境,其甚至包含了完整的root文件系统!有了镜像,我们可以完全不考虑环境依赖的问题,可以轻松进行系统迁移,这和java一次编译多次运行有异曲同工之妙!

在实际使用中,我们通常通过DockerFile来定制镜像。

2、容器Container

Docker容器 是一个轻量级的沙盒,应用运行在不同的容器中从而实现隔离效果。容器的创建和运行是以镜像为基础的,容器可以被创建、销毁、启动和停止等。

3、仓库Repository

Docker仓库类似于我们开发中的代码仓库,各种各样的镜像都在Docker仓库中存放。Docker仓库又分为公开仓库 (Public) 和私有仓库 (Private) 两种形式。

公开仓库:开放给所有用户使用,允许用户上传、下载公开的镜像。Docker官方也有一个公开仓库 Docker Hub,并且它是默认的 Registry。

另外,国内访问这些仓库速度都很慢,我们可以通过阿里云、网易云等提供的镜像加速器来快速的下载Docker Hub的镜像。

私有仓库:在本地创建一个只能自己访问的私有仓库。

Docker基本架构

Docker使用的是典型的C/S架构模式(客户端-服务器架构),此架构的核心理念在于解耦。如下图所示:

【玩转Docker小鲸鱼叭】理解Docker的核心概念-LMLPHP

Docker的客户端使我们使用Docker的主要方式,其提供了一些可执行命令,通过这些命令可以与Docker的守护进程进行交互。

Docker守护进程作为服务器端接收客户端发来的请求,并负责实现构建、运行、分发容器的工作。

Registry 是镜像仓库,负责集中存储和分发镜像的服务。


参考:

1、rundreamsFly导师博客

2、Docker官方文档


🎉 如果喜欢这篇文章,点赞👍 收藏关注 ✅ 哦,创作不易,感谢!😀

【玩转Docker小鲸鱼叭】理解Docker的核心概念-LMLPHP

06-20 01:38