美文网首页
Docker 基本理解

Docker 基本理解

作者: Sherry凤 | 来源:发表于2017-02-16 12:05 被阅读0次

    容器: 磁盘占用空间更少

    虚拟机: 应用 依赖的库 完整的操作系统  docker : 应用.   依赖的库

    虚拟机: 模拟硬件行为 耗内存 cpu  

    docker 不需要

    由于容器不容易安装和管理  docker可以 把开发的应用程序自动部署到容器里的开元引擎

    Docker作用

    1.开发  测试 部署服务

    2.隔离的运行环境

    3.搭建测试环境

    docker 基本组成

    docker client 客户端    :c/s  本地/远程

    docker daemon             :守护进程

    docker image 镜像    :容器的基石  容器的源代码 启动容器的各种条件  层叠只读文件

    docker container 容器 :通过镜像启动  写时复制 copy on write   run命令启动容器

                                       :创建新容器时 docker会构建出一个镜像栈  栈的最顶层添加可写层

    docker registry 仓库 : 用仓库保存用户构建的镜像  通过仓库查找镜像 pull 下载镜像  公有 docker hub  私有

    通过客户端访问守护进程 操作容器 容器存储在镜像里 而镜像保存在仓库里

    docker 依赖 linux 内核特性

    namespaces 命名空间

    封装 :代码的隔离

    操作系统 :系统资源的隔离 (进程 文件系统  网络 .....)

    PID (process ID) :进程的隔离

    NET (Network) :管理网络接口

    IPC (InterProcess Communication):管理跨进程通信的访问

    MNT(Mount) :挂载点 文件系统相关隔离

    UTS(Unix Timesharing System) :隔离内核和版本标识

    Control groups是linux 提供的 限制 记录 隔离 进程组 所使用的机制 Control groups 就是为了实现容器而生

    Control groups 提供功能

    资源限制 :给进程组设定内存使用上限

    优先级设定 :哪些优先使用

    资源计量 :计算进程组使用了多少资源 计费系统中很重要

    资源控制   :可以将进程组挂起和恢复

    docker 容器的能力

    文件系统的隔离 :每个容器都有自己的root 文件系统

    进程的隔离 :每个容器都运行在自己的进程环境中

    网络隔离 :容器间的虚拟网络接口和IP 地址都是分开的

    资源隔离和分组 :使用cgroup 将CPU 和内存之类的资源独立分配给每个docker 容器

    相关文章

      网友评论

          本文标题:Docker 基本理解

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