Docker

作者: 宋song一 | 来源:发表于2018-12-06 00:35 被阅读1次

    Docker属于操作系统层面的虚拟化技术。由于隔离的进程独立于宿主和其它的隔离的进程,因此也称其为容器
    Docker 在容器的基础上,进行了进一步的封装,从文件系统、网络互联到进程隔离等等,极大的简化了容器的创建和维护。使得 Docker 技术比虚拟机技术更为轻便、快捷

    为什么要使用 Docker?

    1. 更高效的利用系统资源
    2. 更快速的启动时间
    3. 一致的运行环境
    4. 持续交付和部署

    使用 Docker 可以通过定制应用镜像来实现持续集成、持续交付、部署。开发人员可以通过
    Dockerfile 来进行镜像构建,并结合 持续集成(Continuous Integration) 系统进行集成测试,
    而运维人员则可以直接在生产环境中快速部署该镜像,甚至结合 持续部署(Continuous
    Delivery/Deployment) 系统进行自动部署。
    而且使用 Dockerfile 使镜像构建透明化,不仅仅开发团队可以理解应用运行环境,也方便
    运维团队理解应用运行所需条件,帮助更好的生产环境中部署该镜像

    1. 更轻松的迁移
    2. 更轻松的维护和扩展

    对比传统虚拟机总结

    特性 容器 虚拟机
    启动 秒级 分钟级
    硬盘使用 一般为 MB 一般为 GB
    性能 接近原生 弱于
    系统支持量 单机支持上千个容器 一般几十个

    基本概念

    Docker 包括三个基本概念

    1. 镜像( Image )
      镜像不包含任何动态数据,其内容在构建之后也不会被改变
    2. 容器( Container )
      镜像是静态的定义,容器是镜像运行时的实体。容器可以被创建、启动、停止、删
      除、暂停等
      容器存储层的生存周期和容器一样,容器消亡时,容器存储层也随之消亡。因此,任何保存
      于容器存储层的信息都会随容器删除而丢失。
      按照 Docker 最佳实践的要求,容器不应该向其存储层内写入任何数据,容器存储层要保持无
      状态化。所有的文件写入操作,都应该使用 数据卷(Volume)、或者绑定宿主目录,在这些
      位置的读写会跳过容器存储层,直接对宿主(或网络存储)发生读写,其性能和稳定性更
      高。
      数据卷的生存周期独立于容器,容器消亡,数据卷不会消亡。因此,使用数据卷后,容器删
      除或者重新运行之后,数据却不会丢失
    3. 仓库( Repository )

    相关文章

      网友评论

          本文标题:Docker

          本文链接:https://www.haomeiwen.com/subject/ldggcqtx.html