架构图

    image.png
    Docker是采用了(c/s)架构模式的应用程序
    Client dockerCLI :客户端docker命令行
    REST API : 一套介于客户端与服务端的之间进行通信并指示其执行的接口
    Server docker daemon:服务端dacker守护进程等待客户端发送命令来执行

    Docker的四大核心技术

    IMAGE-镜像
    CONTAINER-容器
    DATA VOLUMES-数据卷
    NETWORK-网络

    结构图
    image.png
    Docker客户端(Docker Client)
    Docker客户端(Docker Client)是用户与Docker进行交互的最主要方式。当在终端输入docker命令时,对应的就会 在服务端产生对应的作用,并把结果返回给客户端。Docker Client除了连接本地服务端,通过更改或指定 DOCKER_HOST连接远程服务端。

    Docker服务端(Docker Server)
    Docker Daemon其实就是Docker 的服务端。它负责监听Docker API请求(如Docker Client)并管理Docker对象 (Docker Objects),如镜像、容器、网络、数据卷等

    Docker Registries
    俗称Docker仓库,专门用于存储镜像的云服务环境.
    Docker Hub就是一个公有的存放镜像的地方,类似Github存储代码文件。同样的也可以类似Github那样搭建私有 的仓库。

    Docker 对象(Docker Objects)
    镜像:一个Docker的可执行文件,其中包括运行应用程序所需的所有代码内容、依赖库、环境变量和配置文件等。
    容器:镜像被运行起来后的实例。
    网络:外部或者容器间如何互相访问的网络方式,如host模式、bridge模式。
    数据卷:容器与宿主机之间、容器与容器之间共享存储方式,类似虚拟机与主机之间的共享文件目录。