作品简介

本书由浅入深地讲解了Docker的相关内容,涵盖从开发环境到DevOps流水线,再一路到生产环境的整个落地过程以及相关的实用技巧。书中介绍Docker的核心概念和架构,以及将Docker和开发环境有机、高效地结合起来的方法,包括背Docker用作轻量级虚拟机、构建容器、宿主机编排、配置管理、精简镜像等。不仅如此,本书还通过“问题-解决方案-讨论”的形式,将Docker如何融入DevOps流水线、如何在生产环境落地等一系列难题拆解成114个相关的实用技巧,为读者提供解决方案以及一些细节和技巧方面的实践经验。阅读本书,读者学到的不只是Docker,还包括持续集成、持续交付、构建和镜像管理、容器编排等相关领域的一线生产经验。本书编写时一些案例参考的Docker版本是Docker 1.13。本书要求读者具备一定的容器管理和运维的基础知识,适合想要将Docker投入实践的相关技术人员阅读,尤其适合具有中高级DevOps和运维背景的读者阅读。

伊恩·米尔(Ian Miell),巴克莱的首席OpenShift架构师,也是一位经验丰富的软件工程师,他是公司中首位发现Docker潜力的人,并且在Docker生态系统中创建了他自己的工具。

艾丹·霍布森·塞耶斯(Aidan Hobson Sayers),对Docker实践的细节有浓厚的兴趣,他经常分析Docker源代码。他和Ian都为Docker的发展贡献了自己的一份力量,对在商业压力开发环境中构建和维护Docker基础设施有着丰富的经验。

译者简介:杨锐,前ThoughtWorks咨询师,DevOps领域持续关注者,曾任某海外大型项目DevOps工程师,对其持续交付、基础设施即代码、流水线即代码等方面进行了持续推动,对云计算、容器化和持续交付等有一定经验。现供职美团点评。

吴佳兴,毕业于华东理工大学计算机系,主要研究方向有运维自动化、云原生基础设施建设和混沌工程等。2014年年底有幸加入DockOne社区,作为译者,利用闲暇时间为社区贡献一些微薄的力量。欢迎邮件联系(wjx_colstu@hotmail.com)。

梁晓勇,毕业于厦门大学,现任齐家网技术总监,DockOne社区编外人员。长期奋战在技术研发第一线,在网络管理、技术开发、架构设计等方面略有心得。热爱互联网技术,积极投身开源社区,对Docker等容器技术具有浓厚兴趣。欢迎邮件联系(sunlxy@yahoo.com)。

黄博文,ThoughtWorks资深软件工程师/咨询师,拥有丰富的敏捷团队工作经验。目前专注于DevOps技术及云端架构,在搭建持续集成及部署平台、自动化构建基础设施、虚拟化环境以及云端运维等方面有着丰富的经验。拥有AWS解决方案架构师以及开发者证书。译作有《Effective JavaScript》《响应式Web设计:HTML5和CSS3实践指南》《C#多线程编程实战》等。个人邮箱为huangbowen521@gmail.com。

作品目录

  • 版权声明
  • 对本书第1版的赞誉
  • 前言
  • 致谢
  • 关于本书
  • 本书内容结构
  • 代码
  • 关于封面插画
  • 资源与支持
  • 配套资源
  • 提交勘误
  • 与我们联系
  • 关于异步社区和异步图书
  • 第一部分 Docker基础
  • 第1章 Docker初探
  • 1.1 Docker是什么以及为什么用Docker
  • 1.2 构建一个Docker应用程序
  • 1.3 小结
  • 第2章 理解Docker——深入引擎室
  • 2.1 Docker的架构
  • 2.2 Docker守护进程
  • 2.3 Docker客户端
  • 2.4 Docker注册中心
  • 2.5 Docker Hub
  • 2.6 小结
  • 第二部分 Docker与开发
  • 第3章 将Docker用作轻量级虚拟机
  • 3.1 从虚拟机到容器
  • 3.2 保存和还原工作成果
  • 3.3 环境即进程
  • 3.4 小结
  • 第4章 构建镜像
  • 4.1 构建镜像
  • 4.2 小结
  • 第5章 运行容器
  • 5.1 运行容器
  • 5.2 卷——持久化问题
  • 5.3 小结
  • 第6章 Docker日常
  • 6.1 保持阵型
  • 6.2 小结
  • 第7章 配置管理,让一切井然有序
  • 7.1 配置管理和Dockerfile
  • 7.2 传统配置管理工具与Docker
  • 7.3 小即是美
  • 7.4 小结
  • 第三部分 Docker与DevOps
  • 第8章 持续集成:加快开发流水线
  • 8.1 Docker Hub自动化构建
  • 8.2 更有效的构建
  • 8.3 容器化CI过程
  • 8.4 小结
  • 第9章 持续交付:与Docker原则完美契合
  • 9.1 在CD流水线上与其他团队互动
  • 9.2 推动Docker镜像的部署
  • 9.3 为不同环境配置镜像
  • 9.4 升级运行中的容器
  • 9.5 小结
  • 第10章 网络模拟:无痛的现实环境测试
  • 10.1 容器通信:超越手工链接
  • 10.2 使用Docker模拟真实世界的网络
  • 10.3 Docker和虚拟网络
  • 10.4 小结
  • 第四部分 从单机到云的编排
  • 第11章 容器编排入门
  • 11.1 简单的单台宿主机
  • 11.2 手动多宿主机Docker
  • 11.3 服务发现:我们有什么
  • 11.4 小结
  • 第12章 使用Docker实现数据中心即操作系统
  • 12.1 多宿主机Docker
  • 12.2 小结
  • 第13章 Docker平台
  • 13.1 组织选择的因素
  • 13.2 采用Docker时需要考虑的方面
  • 13.3 供应商、组织和产品
  • 13.4 小结
  • 第五部分 生产环境中的Docker
  • 第14章 Docker与安全
  • 14.1 Docker访问权限及其意味着什么
  • 14.2 Docker中的安全手段
  • 14.3 保护对Docker的访问
  • 14.4 Docker外部的安全性
  • 14.5 小结
  • 第15章 一帆风顺:在生产环境中运行Docker
  • 15.1 监控
  • 15.2 资源控制
  • 15.3 Docker的系统管理员用例
  • 15.4 小结
  • 第16章 Docker生产环境实践——应对各项挑战
  • 16.1 性能:不能忽略宿主机
  • 16.2 在容器出问题时——调试Docker
  • 16.3 小结
  • 附录A 安装并使用Docker
  • A.1 虚拟机的方式
  • A.2 连接到外部Docker服务器的Docker客户端
  • A.3 原生Docker客户端和虚拟机
  • A.4 获得帮助
  • 附录B Docker配置
  • B.1 配置Docker
  • B.2 重启Docker
  • 附录C Vagrant
  • C.1 设置
  • C.2 图形用户界面
  • C.3 内存
展开全部