第二章 九析带你完爆 Docker 架构

本系列文章:docker


第一章:九析带你完爆 Docker 安装后端

第二章:九析带你完爆 Docker 架构服务器

目录架构

1 Docker 架构ide

2 Docker 组件工具

3 Docker 进程spa

    3.1 客户端进程操作系统

    3.2 服务端进程3d

    3.3 registry 进程rest


1 Docker 架构图

截图.png

        我认为一个好的架构图要作好三件事,第一:要展现出全部重要组件;第二:要清晰定义这些组件的主次、层次、范围和通讯等关系。第三:要足够简单,可让人一目了然。我认为上面的架构图已经所有都作到了。

        docker 由客户端(client)、服务端( Docker daemon,简称 dockerd )和注册服务器(Registry)三个组件组成,是典型的c/s架构。其中服务端组件的操做对象为:镜像(image)和容器(container)。docker 各个组件能够在同一台主机,也能够在不一样的主机。所以,Docker 已经不能再被简单当作工具,而应该被当作一个平台。


2 Docker 组件

        docker 三大组件都各司其职,这里能够用一个生产加工型的企业作类比。

        1) docker client:   管理部门。负责向 docker daemon 安排工做。

        2)docker registry:仓储部门。负责存储生产原料(image)。

        3)docker daemon:生产部门。和仓储部门沟通,获取生产原料;和管理部门沟通,接受任务,生产商品(container)。


3 Docker 进程

        Docker 默认状况下不安装 registry。client 和 daemon 程序包路径以下:

        1)  client:  /usr/bin/docker

        2) daemon: /usr/bin/dockerd

截图 (5).png

3.1 客户端进程

        客户端进程生命周期很短,从发送命令给 daemon,再到 daemon 响应返回、打印到控制台,每每几秒钟就结束了。下图是客户端进程的一个快照。

截图 (6).png

3.2  服务端进程

        能够直接使用以下命令来启动服务端进程。

ff.png

        可是通常状况下,docker 安装程序会将服务端封装成一个操做系统后台服务,而后交给系统控制器 (systemctl) 来统一进行管理。这样作的好处是之后能够只经过名称(docker)而不是路径(/usr/bin/dockerd) 来管理后端服务了。

sudo systemctl enable docker

sudo systemctl start docker

sudo systemctl stop docker

sudo systemctl restart docker

sudo systemctl status docker

        后台服务配置文件路径 /usr/lib/systemd/system/docker.service。截图以下:

截图 (2).png

        从截图能够看出系统服务运行时会依赖哪些其余服务(Unit单元)、真正调用的后台程序是(/usr/bin/dockerd)、资源限制(Limit)、重启策略(Restart)等。

        执行以下命令启动服务端进程。

sudo systemctl start docker

ps aux | grep dockerd | grep -v grep

截图 (3).png3.3 registry 进程

        这里首先要区分两个概念:registry 和 repo。repo 仅仅表示存储概念,而 registry 是 repo + 认证(鉴权、受权)。也就是说仓库并非谁访问均可以,它还须要有一个认证和准入的操做。

        此外,registry 还有公共和私有之分。docker 默认使用的就是公共 registry(hub.docker.com)。所以你在本地是没法看到 registry 的进程。若是你想在本地也看到 registry 的进程,你须要下载 registry 镜像,并将镜像加载在容器中运行才行。

sudo mkdir /opt/data/registry -p

sudo docker run -d -p 5000:5000 -v /opt/data/registry:/tmp/registry registry:2

截图 (4).png

相关文章
相关标签/搜索