编辑推荐
Nigel Poulton,亚马逊畅销图书作者,存储专家,Docker技术先驱。Nigel有丰富的运维技术经验,著有多部容器相关的图书,并开设了视频培训课程,在业界有很好大的影响力。 《深入浅出Docker》由Docker概览和Docker技术两部分组成,遵循简介—详解—命令的章节布局,全面系统地剖析Docker的基本原理与实践应用。清晰详细的操作步骤结合大量的实际代码,为读者切实入门Docker保驾护航。 《深入浅出Docker》持续位居亚马逊榜单前列,图书内容经过多次补充完善,保证核心技术的实时更新。作为一本Docker实践指导手册,《深入浅出Docker》能够帮助读者从零开始走进Docker的世界。想要通过Docker认证工程师(DCA)考试的读者也将从本书中获益。 本书特色 零基础起步,帮助读者快速建立Docker技术知识体系 抽丝剥茧,层层深入,清晰透彻地阐述复杂的逻辑 涵盖广泛,从安装入门到应用部署,展示Docker应用全景 本书内容 容器发展之路 走进Docker Docker安装 纵观Docker Docker引擎 Docker镜像 Docker容器 应用的容器化 使用Docker Compose部署应用 Docker Swarm Docker网络 Docker覆盖网络 卷与持久化数据 使用Docker Stack部署应用 Docker安全 企业版工具 企业级特性 安全客户端与daemon的通信 DCA考试 延伸
内容简介
本书是一本Docker入门图书,全书分为17章,从Docker概览和Docker技术两部分进行全面解析,深入浅出地介绍了Docker的相关知识,清晰详细的操作步骤结合大量的实际代码帮助读者学以致用,将Docker知识应用到真实的项目开发当中。
本书适合对Docker感兴趣的入门新手、Docker技术开发人员以及运维人员阅读,本书也可作为Docker认证工程师考试的参考图书。
作者简介
Nigel Poulton,Docker Captains专家,亚马逊畅销图书作者,存储专家,Docker技术先驱。Nigel有丰富的运维技术经验,著有多部容器相关的图书,并开设了视频培训课程,在业界有很好大的影响力。 出版了《Docker Deep Dive》《The Kubernetes Book 》等图书。
目录
- 第 一部分 Docker概览
- 第 1章 容器发展之路 2
- 1.1 落后的旧时代 2
- 1.2 你好,VMware! 2
- 1.3 虚拟机的不足 3
- 1.4 你好,容器! 3
- 1.5 Linux容器 3
- 1.6 你好,Docker! 4
- 1.7 Windows容器 4
- 1.8 Windows容器vs Linux容器 4
- 1.9 Mac容器现状 5
- 1.10 Kubernetes 5
- 1.11 本章小结 6
- 第 2章 走进Docker 7
- 2.1 Docker—简介 7
- 2.2 Docker公司 7
- 2.3 Docker运行时与编排引擎 8
- 2.4 Docker开源项目(Moby) 9
- 2.5 容器生态 10
- 2.6 开放容器计划 11
- 2.7 本章小结 12
- 第3章 Docker安装 13
- 3.1 Windows版Docker(DfW) 13
- 3.2 Mac版Docker(DfM) 17
- 3.3 在Linux上安装Docker 19
- 3.4 在Windows Server 2016上安装Docker 21
- 3.5 Docker引擎(Engine)升级 22
- 3.5.1 在Ubuntu 16.04上升级Docker CE 23
- 3.5.2 在Windows Server 2016上升级Docker EE 24
- 3.6 Docker存储驱动的选择 25
- 3.6.1 Device Mapper配置 26
- 3.6.2 让Docker自动设置direct-lvm 26
- 3.6.3 手动配置Device Mapper的direct-lvm 28
- 3.7 本章小结 28
- 第4章 纵观Docker 29
- 4.1 运维视角 29
- 4.1.1 镜像 30
- 4.1.2 容器 31
- 4.1.3 连接到运行中的容器 34
- 4.2 开发视角 35
- 4.3 本章小结 38
- *二部分 Docker技术
- 第5章 Docker引擎 40
- 5.1 Docker引擎—简介 40
- 5.2 Docker引擎—详解 41
- 5.2.1 摆脱LXC 41
- 5.2.2 摒弃大而全的Docker daemon 42
- 5.2.3 开放容器计划(OCI)的影响 43
- 5.2.4 runc 43
- 5.2.5 containerd 43
- 5.2.6 启动一个新的容器(示例) 44
- 5.2.7 该模型的显著优势 45
- 5.2.8 shim 45
- 5.2.9 在Linux中的实现 46
- 5.2.10 daemon的作用 46
- 5.3 本章小结 46
- 第6章 Docker镜像 48
- 6.1 Docker镜像—简介 48
- 6.2 Docker镜像—详解 48
- 6.2.1 镜像和容器 49
- 6.2.2 镜像通常比较小 49
- 6.2.3 拉取镜像 49
- 6.2.4 镜像命名 51
- 6.2.5 镜像仓库服务 51
- 6.2.6 镜像命名和标签 52
- 6.2.7 为镜像打多个标签 54
- 6.2.8 过滤docker image ls的输出内容 55
- 6.2.9 通过CLI方式搜索Docker Hub 56
- 6.2.10 镜像和分层 57
- 6.2.11 共享镜像层 60
- 6.2.12 根据摘要拉取镜像 61
- 6.2.13 镜像散列值(摘要) 63
- 6.2.14 多层架构的镜像 63
- 6.2.15 删除镜像 65
- 6.3 镜像—命令 67
- 6.4 本章小结 67
- 第7章 Docker容器 68
- 7.1 Docker容器—简介 68
- 7.2 Docker容器—详解 69
- 7.2.1 容器vs虚拟机 69
- 7.2.2 虚拟机的额外开销 71
- 7.2.3 运行的容器 71
- 7.2.4 检查Docker daemon 71
- 7.2.5 启动一个简单容器 72
- 7.2.6 容器进程 74
- 7.2.7 容器生命周期 75
- 7.2.8 优雅地停止容器 78
- 7.2.9 利用重启策略进行容器的自我修复 78
- 7.2.10 Web服务器示例 80
- 7.2.11 查看容器详情 82
- 7.2.12 快速清理 82
- 7.3 容器—命令 83
- 7.4 本章小结 84
- 第8章 应用的容器化 85
- 8.1 应用的容器化—简介 85
- 8.2 应用的容器化—详解 86
- 8.2.1 单体应用容器化 86
- 8.2.2 生产环境中的多阶段构建 95
- 8.2.3 *佳实践 98
- 8.3 应用的容器化—命令 100
- 8.4 本章小结 101
- 第9章 使用Docker Compose部署应用 102
- 9.1 使用Docker Compose部署应用—简介 102
- 9.2 使用Docker Compose部署应用—详解 103
- 9.2.1 Docker Compose的背景 103
- 9.2.2 安装Docker Compose 103
- 9.2.3 Compose文件 105
- 9.2.4 使用Docker Compose部署应用 107
- 9.2.5 使用Docker Compose管理应用 110
- 9.3 使用Docker Compose部署应用—命令 115
- 9.4 本章小结 116
- 第 10章 Docker Swarm 117
- 10.1 Docker Swarm—简介 117
- 10.2 Docker Swarm—详解 118
- 10.2.1 Swarm的初步介绍 118
- 10.2.2 搭建安全Swarm集群 119
- 10.2.3 Swarm服务 125
- 10.2.4 故障排除 133
- 10.3 Docker Swarm—命令 134
- 10.4 本章小结 135
- 第 11章 Docker网络 136
- 11.1 Docker网络—简介 136
- 11.2 Docker网络—详解 137
- 11.2.1 基础理论 137
- 11.2.2 单机桥接网络 140
- 11.2.3 多机覆盖网络 146
- 11.2.4 接入现有网络 146
- 11.2.5 服务发现 152
- 11.2.6 Ingress网络 153
- 11.3 Docker网络—命令 156
- 11.4 本章小结 156
- 第 12章 Docker覆盖网络 157
- 12.1 Docker覆盖网络—简介 157
- 12.2 Docker覆盖网络—详解 157
- 12.2.1 在Swarm模式下构建并测试Docker覆盖网络 158
- 12.2.2 工作原理 164
- 12.3 Docker覆盖网络—命令 168
- 12.4 本章小结 168
- 第 13章 卷与持久化数据 169
- 13.1 卷与持久化数据—简介 169
- 13.2 卷与持久化数据—详解 169
- 13.2.1 容器与非持久数据 170
- 13.2.2 容器与持久化数据 170
- 13.2.3 在集群节点间共享存储 175
- 13.3 卷与持久化数据—命令 176
- 13.4 本章小结 176
- 第 14章 使用Docker Stack部署应用 177
- 14.1 使用Docker Stack部署应用—简介 177
- 14.2 使用Docker Stack部署应用—详解 178
- 14.2.1 简单应用 178
- 14.2.2 深入分析Stack文件 180
- 14.2.3 部署应用 186
- 14.2.4 管理应用 191
- 14.3 使用Docker Stack部署应用—命令 193
- 14.4 本章小结 194
- 第 15章 Docker安全 195
- 15.1 Docker安全—简介 195
- 15.2 Docker安全—详解 196
- 15.2.1 Linux安全技术 197
- 15.2.2 Docker平台安全技术 201
- 15.3 本章小结 212
- 第 16章 企业版工具 213
- 16.1 企业版工具—简介 213
- 16.2 企业版工具—详解 214
- 16.2.1 Docker EE引擎 214
- 16.2.2 Docker通用控制平面(UCP) 216
- 16.2.3 Docker可信镜像仓库服务(DTR) 227
- 16.3 本章小结 233
- 第 17章 企业级特性 234
- 17.1 企业级特性—简介 234
- 17.2 企业级特性—详解 234
- 17.2.1 基于角色的权限控制(RBAC) 235
- 17.2.2 集成活动目录 239
- 17.2.3 Docker内容信任机制(DCT) 241
- 17.2.4 配置Docker可信镜像仓库服务(DTR) 243
- 17.2.5 使用Docker可信镜像仓库服务 244
- 17.2.6 提升镜像 247
- 17.2.7 HTTP路由网格(HRM) 250
- 17.3 本章小结 253
- 附录A 安全客户端与daemon的通信 255
- 附录B DCA考试 265
- 附录C 延伸 270