• 1. 深入理解Docker架构与实现孙宏亮 allen.sun@daocloud.io 2014.12.13
  • 2. 自我介绍DaoCloud,浙江大学 PaaS(Cloud Foundry)、Docker开源社区 对PaaS有深入研究和丰富实践,撰写了大量有深度的技术博客。 合伙人身份加入DaoCloud团队,致力于传播以Docker为主的容器的技术,推动互联网应用的容器化步伐。
  • 3. DaoCloudStartup 建设DaoCloud平台 提供以Docker等轻量级容器为核心的企业级云计算服务 ——Docker Hub Mirror Service ——More in the furture
  • 4. AgendaDocker简介 Docker架构 Docker Hub Mirror
  • 5. Docker介绍Docker is an open-source project that automates the deployment of applications inside software containers, by providing an additional layer of abstraction and automation of operating system–level virtualization on Linux. ——from wiki图片源: http://en.wikipedia.org/wiki/Docker_%28software%29 1.2.3.4.5.1.4.0 since yesterday
  • 6. Docker架构 Docker Client Docker Daemon Docker Registry Driver Graph libcontainer Docker Container
  • 7. Docker 架构——Docker DaemonDocker Server 服务于Docker API Engine 执行引擎 Job Engine内工作最小执行但愿
  • 8. Docker 架构——Docker ServerRouter Handler
  • 9. Docker 架构——DriverExecdriver 管理容器的运行 Networkdriver 管理容器的网络 Graphdriver 管理容器的镜像
  • 10. Docker 架构——execdriverLXC 早版使用LXC作为创建管理容器的工具 Native 如今使用native来创建管理容器,native调用libcontainer
  • 11. Docker 架构——libcontainerlibcontainernamespace cgroups apparmor netlink capabilities ……
  • 12. Docker 架构——networkdriverBridge Network Interface IP port
  • 13. Docker 架构——Docker网络模式Docker Daemon网络模式: bridge桥接 None(disabled) Docker Container网络模式: bridge桥接模式 Host模式 other container模式 None(disabled)模式
  • 14. Docker 架构——graphdriveraufs Btrfs Devmapper Vfs Overlayfs merged into Linux Kenerl 3.18-rc2 Overlayfs in docker 1.4.0 yesterday
  • 15. Docker 架构——Graphrepository graphdbGraph
  • 16. Docker Pull流程Docker Registry
  • 17. Docker 架构——Registry(index.docker.io)Registry功能 管理镜像存储 供开发者下载、上传 Docker Hub Docker官方提供 (index.docker.io) Docker Hub特性 镜像丰富 保持更新Challenges!
  • 18. Docker Hub Mirror架构图Docker Hub的功能拓展 Docker Hub “CDN” 对用户透明 图片源: http://www.qiniu.com/ DaoCloud Docker Hub Mirror Serve developers in China
  • 19. Docker Hub Mirror流程图Thanks to 七牛, much faster than you think when pullingMuch faster than yourself pull from Docker Hub
  • 20. Docker Hub Mirror原理
  • 21. 用户如何选择? 技术爱好者(hub)和企业用户的区别(private)private registryMirror镜像多样性较丰富,需人为手动同步足够丰富,与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. 谢谢!