为什么需要docker?
    1.软件更新发布及部署低效,过程繁琐且需要人工介入
    2.环境一致性难以保证,不同环境之间迁移成本太高、
    3.构建容易分发简单

    因为每个环境(开发、测试、上线)都需要部署一套代码,环境的一致性很难保证。
    比如18环境上的swagger更新了,41上没更新,就会有的接口无法访问,导致程序代码报错。

    docker就想一个集装箱,把一个一个依赖包也就是包装盒放进去docker集装箱 ,
    在把一个一个的集装箱放到货轮中。货轮就是操作系统。

    应用环境
    1.构建运行环境
    2.微服务
    3.CI/CD CI:持续集成 CD :持续的部署
    使用CI/CD高度保持了环境一致性,对程序的代码产生的bug和程序的代码发布的质量有着直接的关系。

    Docker的重要概念
    1. 客户端Clint:可运行docker指令
    2. 服务器进程(Docker Daemon) : 管理镜像和容器
    3. 镜像仓库: 存储镜像的仓库

    镜像就是一个模子,容器就是模子中倒入水泥,变成的雕像。

    Docker常用命令
    Docker仓库操作:pull、push
    Docker镜像管理:images、rmi、build
    Docker生命周期管理:run、start、stop、rm