接上篇
第 8-11 章 http://blog.51cto.com/xiong51/2094359
12, 基本架构
?? 早期的 docker 是基于已经成熟的 LXC(linux container)技术实现的. 自 0.9 版本起, docker 已经逐渐从 LXC 转移到新的 libcontainer 上, 并且积极推动开放容器规范 runc;
?? 从 OS 功能上看, 目前 Docker 底层依赖的核心技术主要包括 linux 操作系统的命名空间 (name space), 控制组( cgroup ), 联合文件系统( union file system 或 aufs ) 和 linux 网络虚拟化支持.
?? docker 目前采用的是标准的 C/S 架构, client 和 service 即可以运行在一台机器上, 也可以在不同机器上通过 socker 和 RESTful API 来进行通信.
12.1, 服务端
?? Docker Daemon 一般在宿主机后台运行, 作为服务端接受来自客户的请求, 并处理这些请求 ( 创建, 运行, 分发容器).
?? 在设计上, docker Daemon 是一个模块化的任务, 通过专门的 engine 模块来分发管理各个来自客户端的任务.
?? Docker 服务器默认监听本地的套接字, 只允许本地的 root 用户或 docker 用户组成员访问, 可以通过 - H 选项来修改监听的方式.
Host $ docker daemon -H IP:port 如 docker daemon -H 0.0.0.0:2222
?? Docker 默认启动配置文件在 / etc/default/docker
12.2, 客户端
?? Docker 客户端为用户提供一系列的可执行命令, 用户用这些命令与 Docker Daemon 交互.
来源: http://www.bubuko.com/infodetail-2557930.html