四、Docker架构

  • Post author:
  • Post category:其他




架构


核心组件

  • Docker客户端(Client)

  • Docker服务端(Docker Daemon)

  • Docker镜像(Image)

  • Registry(仓库)

  • Docker容器(Container)

在这里插入图片描述



Docker客户端

最常用的Docker客户端是docker命令,通过docker可以在Host上构建和运行容器。

除了Docker命令行工具,用户也可以通过REST API可以与服务器进行通信。



Docker服务器

Docker daemon是服务器组件,以Linux后台服务方式运行。

Docker daemon运行在Docker host上,负责创建、运行、监控容器、构建、存储镜像。



Docker镜像

可以将Docker看作是只读模板,通过它可以创建Docker容器。

镜像生成方法: ① 从无到有创建镜像 ② 下载使用别人创建好的镜像 ③ 从现有镜像上创建新的镜像



Docker容器

Docker容器是Docker镜像的运行实例。

镜像是软件生命周期的构建和打包阶段,而容器是启动和运行阶段。



Registry

Registry是存放Docker镜像的仓库,Registry分私有和公有两种。

docker pull命令从Registry下载镜像

docker run命令先下载镜像(如本地没有),然后再启动容器



容器运行流程

[root@localhost system]# docker run -d -p 80:80 httpd
Unable to find image 'httpd:latest' locally
latest: Pulling from library/httpd
a2abf6c4d29d: Already exists 
dcc4698797c8: Pull complete 
41c22baa66ec: Pull complete 
67283bbdd4a0: Pull complete 
d982c879c57e: Pull complete 
Digest: sha256:0954cc1af252d824860b2c5dc0a10720af2b7a3d3435581ca788dff8480c7b32
Status: Downloaded newer image for httpd:latest
17e0daf19a834914512c7c130465b11bc4c7ecdb2251207848c2df449364a749
  1. Docker客户端只需docker run命令

  2. Docker daemon发现本地没有httpd镜像

  3. daemon从Docker Hub下载镜像

  4. 下载完成,镜像httpd被保存在本地

  5. Docker daemon启动容器


下载的镜像

在这里插入图片描述


启动的容器

在这里插入图片描述



版权声明:本文为weixin_42751293原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。