深入理解Docker架构与实现 Sunhongliang
2020-03-01 203浏览
- 1.深入理解 Docker 架构与实 现 孙宏亮 allen.sun@daocloud.io 2014.12.13
- 2.自我介绍 • DaoCloud ,浙江大学 • PaaS(Cloud Foundry) 、 Docker 开源社 区 • 对 PaaS 有深入研究和丰富实 践,撰写了大 实实实 实实实 量有深度的技术博客。 • 合伙人身份加入 DaoCloud团队,致力于 传播以 Docker 实主 的容器的技 实实,推 实 实实互 实 网实 实 用的容器化步伐。 实 实实 实实实 实
- 3.DaoCloud • Startup • 建设 DaoCloud 平台 • 提供以 Docker 等轻量级容器为核心的企 业级云计算服务 ——Docker Hub Mirror Service ——More in the furture
- 4.Agenda • Docker 简介 • Docker 架构 • Docker Hub Mirror
- 5.Docker 介绍 1 .an Docker is open-source 2 project that automates the . deployment of applications inside software containers, 3 by providing an additional . 4 layer of abstraction and . automation of operating 5 system–level virtualization . on Linux. 1.4.0 since yesterday ——from wiki 图片源:http://en.wikipedia.org/wiki/Docker_%28software%29
- 6.Docker 架构 • Docker Client • Docker Daemon • Docker Registry • Driver • Graph • libcontainer • Docker Container
- 7.Docker 架构—— Docker Dae mon •Docker Server 服务于 Docker API •Engine 执行引擎 •Job Engine 内工作 最小执行但愿
- 8.Docker 架构—— Docker Ser ver •Router •Handler
- 9.Docker 架构—— Driver •Execdriver 管理容器的运行 •Networkdriver 管理容器的网络 •Graphdriver 管理容器的镜像
- 10.Docker 架构—— execdriver •LXC 早版使用 LXC 作为创 建管理容器的工具 •Native 如今使用 native 来创 建管理容器, native 实用 libcontainer
- 11.Docker 架构—— libcontainer libcontaine r •namespace •cgroups •apparmor •netlink •capabilities •……
- 12.Docker 架构—— networkdriv er •Bridge •Network Interface •IP •port
- 13.Docker 架构—— Docker 网络 模式 Docker Daemon 网络模式: •bridge 桥接 •None ( disabled ) Docker Container 网络模式: •bridge 桥接模式 •Host 模式 •other container 模式 •None ( disabled )模式
- 14.Docker 架构—— graphdriver •aufs •Btrfs •Devmapper •Vfs Overlayfs merged into Linux Kenerl 3.18-rc2 •Overlayfs in docker 1.4.0 yesterday
- 15.Docker 架构—— Graph Graph •repository •graphdb
- 16.Docker Pull 流程 Docker Registry
- 17.Docker 架构—— Registry Registry 功能 管理镜像存储 供开实实 者下 实 实实 、上 实实 Docker Hub Docker 官方提供 (index.docker.io) Docker Hub 特 性 镜像丰富 保持更新 Challenges ! (index.docker.io)
- 18.Docker Hub Mirror 架构图 •Docker Hub 的功能拓展 •Docker Hub “CDN” •对用户透明 DaoCloud •Docker Hub Mirror •Serve developers in China 图片源:http://www.qiniu.com/
- 19.Docker Hub Mirror 流程图 Much faster than yourself pull from Docker Hub Thanks to 七牛 , much faster than you think when pulling
- 20.Docker Hub Mirror 原理
- 21.用户如何选择? 技术爱好者( hub )和企业用户的区别( privat e) private registry Mirror 镜像多样性 较丰富,需人为手动同步 足够丰富,与 Docker Hub 一致, 自动同步 使用方式 添加 URL ,侵入 Dockerfile 使用 设定 Docker 启动参数,无侵入性 registry 升 级 或出现故障 镜像全盘失效,修改所有镜像 配置,重新从 Docker Hub 下 载 自动跳转到 Docker Hub 下载,用 户无任何影响 Hub 镜像更 新 老版本镜像失效 , 用户使用受 阻 除非管理员人为下载更新版本 老版本镜像失效, Mirror 自动下载 更新版本覆盖前者,对用户透明 内部部署方式 私有化内部部署方案 Public Serivces 镜像下载 由管理员选择 由用户选择 镜像存储 管理员自行管理,备份, 一致性考虑 用户无需关心 访问速度 快速,私有网实 快速
- 22.Docker Mirror
- 23.Docker Mirror
- 24.Docker Mirror
- 25.Docker Mirror
- 26.欢迎大家体验 DaoCloud Mirror www.daocloud.io
- 27.分享资料 : 玩转Docker镜像 Docker源码分析(一): Docker架构 Docker源码分析(二): Docker Client创建与命令执行 Docker源码分析(三): Docker Daemon启动 Docker源码分析(四): Docker Daemon之NewDaemon实现 Docker源码分析(五): Docker Server的创建 Docker 源码分析(六): Docker Daemon 网络 ( coming soon ) Docker 源码分析(七): Docker Container 网络( coming soon ) …… 注:文章首发位于 InfoQ 。
- 28.谢谢!