Docker实践pdf

图书网 2020年8月10日21:31:29
评论
2.3K
摘要

作为一个开源的容器系统,Docker 让部署应用程序变得既平滑又灵活。Docker 强大又易于使用,而且它通过更短的构建周期、更少的产品缺陷、无需费力的应用程序滚动发行,让开发人员和系统管理的工作都更加容易。
这是一本涵盖了101 个技巧的实操指南,读者可以用它来获得Docker 的大部分知识。本书遵循手册风格的“问题/ 解决方案/ 讨论”模式,针对很重要的问题,如轻松的服务器管理和配置、部署微服务、为实验而创建安全的环境等,为读者提供了及时有用的解决方案。在阅读本书的过程中,读者不但能学到Docker 的基础知识,还能学到Docker 的实践,如将Docker 和持续集成过程结合使用、使用Chef 来自动化复杂容器的创建过程以及使用Kubernetes 进行容器编排等。
本书主要内容
● 加速 DevOps流水线。
● 成本低廉地替换虚拟机。
● 提高云端工作流程的效率。
● 使用 Docker Hub。
● 引ling到 Docker 生态系统。
本书写给对Docker 感兴趣的人。

Docker实践 作者:[美] 伊恩·米尔(Ian Miell),[美] 艾丹·霍布森·塞耶斯(Aidan Hobson Sayers)

Docker实践 出版社:人民邮电出版社

Docker实践 内容简介

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

《Docker实践》要求读者具备一定的容器管理和运维的基础知识,适合想要将Docker投入实践的相关技术人员阅读,尤其适合具有中 高 级DevOps和运维背景的读者阅读。

Docker实践 目录

第一部分 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 进程即环境

3.5 小结

第4章 Docker日常

4.1 卷——持久化问题

4.2 运行容器

4.3 构建镜像

4.4 保持阵型

4.5 小结

第5章 配置管理——让一切井然有序

5.1 配置管理和Dockerfile

5.2 传统配置管理工具与Docker

5.3 小即是美

5.4 小结

第三部分 Docker与DevOps

第6章 持续集成:加快开发流水线

6.1 Docker Hub自动化构建

6.2 更有效的构建

6.3 容器化CI过程

6.4 小结

第7章 持续交付:与Docker原则完美契合

7.1 在CD流水线上与其他团队互动

7.2 推动Docker镜像的部署

7.3 为不同环境配置镜像

7.4 升级运行中的容器

7.5 小结

第8章 网络模拟:无痛的现实环境测试

8.1 容器通信——超越手工链接

8.2 使用Docker来模拟真实世界的网络

8.3 Docker和虚拟网络

8.4 小结

第四部分 生产环境中的Docker

第9章 容器编排:管理多个Docker容器

9.1 简单的单台宿主机

9.2 多宿主机Docker

9.3 服务发现:我们有什么

9.4 小结

第10章 Docker与安全

10.1 Docker访问权限及其意味着什么

10.2 Docker中的安全手段

10.3 来自Docker以外的安全

10.4 小结

第11章 一帆风顺——生产环境中的Docker以及运维上的考量

11.1 监控

11.2 资源控制

11.3 Docker的系统管理员用例

11.4 小结

第12章 Docker生产环境实践——应对各项挑战

12.1 性能——不能忽略宿主机

12.2 在容器出问题时——调试Docker

12.3 小结

附录A 安装并使用Docker

A.1 虚拟机的方式

A.2 连接到外部Docker服务器的Docker客户端

A.3 原生Docker客户端和虚拟机

A.4 获得帮助

附录B Docker配置

B.1 重启Docker

附录C Vagrant

C.1 设置

C.2 图形用户界面

C.3 内存

Docker实践 精彩文摘

本书的第一部分由第1章和第2章构成,将带领读者开始使用Docker,并讲解其基础知识。第1章阐述Docker的起源及其核心概念,如镜像、容器和分层。在第1章的最后,读者将动手使用Dockerfile创建自己的第一个镜像。第2章介绍一些有用的技巧,让读者深入理解Docker的架构。我们通过依次讲解每个主要组件,阐述Docker守护进程与其客户端、Docker注册中心和Docker Hub之间的关系。在第一部分结束时,读者将对Docker的核心概念有所了解,并能够演示一些有用的技巧,为理解本书的后续内容打下坚实的基础。

本章主要内容

· Docker是什么

· Docker的使用以及它如何能节省时间和金钱

· 容器与镜像之间的区别

· Docker的分层特性

· 使用Docker构建并运行一个to-do应用程序

Docker是一个允许用户“在任何地方构建、分发及运行任何应用”的平台。它在极短的时间内发展壮大,目前已经被视为解决软件中最昂贵的方面之一——部署的一个标准方法。

在Docker出现之前,开发流水线通常由用于管理软件活动的不同技术组合而成,如虚拟机、配置管理工具、不同的包管理系统以及各类依赖库复杂的网站。所有这些工具需要由专业的工程师管理和维护,并且多数工具都具有自己独特的配置方式。

Docker改变了这一切,允许不同的工程师参与到这个过程中,有效地使用同一门语言,这让协作变得轻而易举。所有东西通过一个共同的流水线转变成可以在任何目标平台上使用的单一的产出——无须继续维护一堆让人眼花缭乱的工具配置,如图1-1所示。

与此同时,只要现存的软件技术栈依然有效,用户就无须抛弃它——用户可以将其原样打包到一个Docker容器内供其他人使用。由此获得的额外好处是,用户能看到这些容器是如何构建的,因此如果需要深入其细节,完全没问题。

本书针对的是具有一定Docker知识的中级开发人员。如果读者对本书的基础部分较熟悉,可随意跳到后续章节。本书的目标是揭示Docker所带来的现实世界的挑战,并展示其解决之道。不过,首先我们将提供一个Docker自身的快速回顾。如果读者想了解更全面的Docker基础,请查阅Jeff Nickoloff编写的《Docker in Action》一书(Manning Publications,2016)。

第2章将更深入地介绍Docker的架构,并通过一些技巧来演示其威力。在本章中,读者将了解到Docker是什么、为什么它很重要,并开始使用它。

在动手实践之前,我们将对Docker稍做讨论,以便读者了解它的背景、“Docker”名字的来历以及为什么使用它!

要理解Docker是什么,从一个比喻开始会比技术性解释来得简单,而且这个Docker的比喻非常有说服力。Docker原本是指在船只停靠港口之后将商品移进或移出的工人。箱子和物品的大小和形状各异,而有经验的码头工人能以合算的方式手工将商品装入船只,因而他们倍受青睐(见图1-2)。雇人搬东西并不便宜,但除此之外别无选择。

对在软件行业工作的人来说,这听起来应该很熟悉。大量时间和精力被花在将奇形怪状的软件放置到装满了其他奇形怪状软件、大小各异的船只上,以便将其卖给其他地方的用户或商业机构。

图1-3展示了使用Docker概念时如何能节省时间和金钱。

在Docker出现之前,部署软件到不同环境所需的工作量巨大。即使不是采用手工运行脚本的方式在不同机器上进行软件配备(还是有很多人这么做),用户也不得不全力应付那些配置管理工具,它们掌管着渴求资源且快速变化的环境的状态。即便将这些工作封装到虚拟机中,还是需要花费大量时间来部署这些虚拟机、等待它们启动并管理它们所产生的额外的资源开销。

使用Docker,配置工作从资源管理中分离了出来,而部署工作则是微不足道的:运行docker run,环境的镜像会被拉取下来并准备运行,所消耗的资源更少并且是内含的,因此不会干扰其他环境。

读者无须担心容器是将被分发到Red Hat机器、Ubuntu机器还是CentOS虚拟机镜像中,只要上面有Docker,就没有问题。

图书网:Docker实践pdf

继续阅读

→→→→→→→→→→→→→→→→→→→→查找获取

程序设计

重构 改善既有代码的设计(中文版)pdf

《重构:改善既有代码的设计》(中文版)所提的这些重构准则将帮助你一次一小步地修改你的代码,这就减少了过程中的风险。很快你就会把这些重构准则和其名称加入自己的开发词典中,并且朗朗上口...
程序设计

数据结构 C语言版 第2版pdf

适读人群 :普通高校电子信息大类本科生学习、考研,同时也适合零售和培训。 采用“案例驱动”的编写模式。书中结合实际应用,将各章按照“案例引入——数据结构及其操作——案例分析与实现”...
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: