Docker容器技术与运维

Docker容器技术与运维
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
2021-04
版次: 1
ISBN: 9787115529084
定价: 69.80
装帧: 平装
开本: 其他
纸张: 胶版纸
页数: 348页
字数: 602千字
21人买过
  • 本书针对容器技术与应用的实际需求,讲解主流容器平台Docker的应用和运维的技术方法,内容包括Docker基础与安装、镜像管理、容器管理、Docker网络配置、Docker存储管理、Docker应用程序开发、镜像自动化构建、持续集成和自动化部署、多容器编排、多主机管理和Docker容器集群平台,以及生产环境中的Docker运维。 钟小平,已出版的科技零售书15579《网络服务器配置与应用(第3版)》,累计销量36000册。写作能力和专业素养都非常不错。 第1章  Docker基础  1

    1.1 Docker的概念 2

    1.1.1 什么是Docker 2

    1.1.2 镜像与容器 2

    1.1.3 容器与虚拟机 3

    1.1.4 Docker引擎 3

    1.1.5 Docker生态系统 4

    1.2 Docker的应用 4

    1.2.1 实现应用程序快速、一致的交付 4

    1.2.2 响应式部署和应用程序 5

    1.2.3 运行更多的工作负载 5

    1.2.4 部署微服务应用 5

    1.3 Docker架构 5

    1.3.1 Docker客户端 6

    1.3.2 Docker守护进程 6

    1.3.3 Docker注册中心 6

    1.3.4 Docker对象 6

    1.4 Docker底层技术 7

    1.4.1 名称空间 7

    1.4.2 控制组 8

    1.4.3 联合文件系统 9

    1.4.4 容器格式 9

    1.5 安装Docker 10

    1.5.1 Docker的版本 10

    1.5.2 Docker所支持的平台 11

    1.5.3 安装Docker的准备工作 11

    1.5.4 使用软件仓库安装Docker CE 14

    1.5.5 通过便捷脚本安装Docker CE 15

    1.5.6 卸载Docker 16

    1.5.7 安装Docker之后的配置 16

    1.6 docker命令行的使用 19

    1.6.1 docker命令行接口类型 19

    1.6.2 docker命令列表 19

    1.6.3 docker命令的基本用法 21

    1.6.4 docker命令示例 22

    1.7 Docker API 22

    1.7.1 Docker API类型 22

    1.7.2 使用Docker API 23

    1.8 Docker配置文件格式 23

    1.8.1 JSON格式 23

    1.8.2 YAML格式 24

    1.9 习题 26

    第2章 Docker镜像 27

    2.1 Docker镜像基础 28

    2.1.1 进一步理解镜像的概念 28

    2.1.2 镜像的基本信息与标识 28

    2.1.3 镜像描述文件Dockerfile 29

    2.1.4 父镜像与基础镜像 29

    2.1.5 镜像的分层结构 30

    2.1.6 镜像操作命令 32

    2.2 Docker镜像的基本操作 32

    2.2.1 拉取镜像 32

    2.2.2 显示镜像列表 33

    2.2.3 设置镜像标签 35

    2.2.4 查看镜像详细信息 36

    2.2.5 查看镜像的构建历史以验证

    镜像分层 36

    2.2.6 查找镜像 37

    2.2.7 删除本地镜像 38

    2.2.8 Docker镜像的导入和导出 39

    2.3 Docker注册中心 40

    2.3.1 Docker注册中心与仓库 40

    2.3.2 Docker Hub 41

    2.3.3 阿里云的容器镜像服务 47

    2.3.4 私有Docker注册中心 49

    2.4 习题 51

    第3章 Docker容器 52

    3.1 Docker容器基础 53

    3.1.1 进一步理解容器的概念 53

    3.1.2 容器的基本信息与标识 53

    3.1.3 可写的容器层 54

    3.1.4 磁盘上的容器大小 54

    3.1.5 “写时拷贝”策略 55

    3.1.6 容器操作命令 58

    3.2 Docker容器的基本操作 58

    3.2.1 创建和运行容器 58

    3.2.2 启动和停止容器 64

    3.2.3 查看容器信息 65

    3.2.4 进入容器执行操作 67

    3.2.5 删除容器 69

    3.2.6 导出与导入容器 69

    3.2.7 基于容器创建镜像 70

    3.3 限制容器运行的资源 72

    3.3.1 限制容器的内存使用 72

    3.3.2 限制容器的CPU使用 74

    3.3.3 块IO带宽限制 75

    3.3.4 资源限制的实现机制——控制组 77

    3.3.5 动态更改容器的配置 77

    3.4 容器监控 78

    3.4.1 Docker容器监控命令 78

    3.4.2 使用cAdvisor监控容器 79

    3.5 容器的日志管理 81

    3.5.1 使用docker logs命令查看容器

    日志 81

    3.5.2 配置日志驱动重定向容器的

    日志记录 82

    3.6 习题 83

    第4章 Docker网络 84

    4.1 Docker网络基础 85

    4.1.1 Docker容器网络模型 85

    4.1.2 Linux网络基础 87

    4.1.3 单主机与多主机的Docker网络 88

    4.1.4 docker run命令的网络配置用法 88

    4.1.5 docker network命令的网络

    配置用法 89

    4.2 配置容器的网络连接 90

    4.2.1 使用默认桥接网络 90

    4.2.2 使用主机网络 94

    4.2.3 使用none网络模式 95

    4.2.4 使用container网络模式 96

    4.2.5 用户自定义桥接网络 97

    4.3 容器与外部的网络通信 105

    4.3.1 容器访问外部网络 105

    4.3.2 从外部网络访问容器 106

    4.4 容器之间的网络通信 109

    4.4.1 容器之间的网络通信的解决

    方案 109

    4.4.2 以传统方式建立容器连接 110

    4.5 习题 113

    第5章 Docker存储 114

    5.1 Docker存储驱动及其选择 115

    5.1.1 概述 115

    5.1.2 Docker版本所支持的存储驱动 116

    5.1.3 Docker存储驱动所支持的底层

    文件系统 116

    5.1.4 选择存储驱动需考虑的其他

    事项 117

    5.1.5 检查当前的存储驱动 117

    5.2 使用overlay2存储驱动 118

    5.2.1 使用overlay2存储驱动的要求 118

    5.2.2 配置Docker使用overlay2存储

    驱动 119

    5.2.3 overlay2存储驱动的工作机制 122

    5.2.4 容器使用overlay2存储驱动的

    读写机制 126

    5.2.5 OverlayFS与Docker性能 127

    5.3 迁移Docker根目录 127

    5.4 Docker存储的挂载类型 128

    5.4.1 Docker卷与存储驱动 128

    5.4.2 选择合适的挂载类型 129

    5.4.3 docker run命令的存储配置

    基本用法 130

    5.5 使用Docker卷 130

    5.5.1 卷的优势 130

    5.5.2 选择-v或--mount选项 131

    5.5.3 创建和管理卷 131

    5.5.4 启动带有卷的容器 132

    5.5.5 使用容器填充卷 133

    5.5.6 使用只读卷 133

    5.5.7 删除卷 133

    5.6 使用绑定挂载 134

    5.6.1 绑定挂载的功能限制 134

    5.6.2 选择-v或--mount选项 134

    5.6.3 容器使用绑定挂载 135

    5.6.4 使用只读的绑定挂载 136

    5.6.5 配置SELinux标签 137

    5.7 使用tmpfs挂载 137

    5.7.1 tmpfs挂载的特点 138

    5.7.2 选择--tmpfs或--mount选项 138

    5.7.3 在容器中使用tmpfs挂载 138

    5.7.4 指定tmpfs参数 139

    5.8 使用卷容器 139

    5.8.1 通过卷容器实现容器之间的

    数据共享 139

    5.8.2 通过卷容器来备份、恢复和迁移

    数据卷 140

    5.9 容器的数据共享 140

    5.9.1 容器与主机共享数据 140

    5.9.2 容器之间共享数据 141

    5.10 习题 141

    第6章 开发基于Docker的

     应用程序 143

    6.1 开发Docker镜像 144

    6.1.1 进一步了解Dockerfile 144

    6.1.2 通过Dockerfile构建镜像的基本

    方法 144

    6.1.3 Dockerfile常用指令 146

    6.1.4 Dockerfile示例 152

    6.1.5 基于Dockerfile构建镜像 153

    6.1.6 创建基础镜像 156

    6.1.7 使用多阶段构建 157

    6.1.8 编写Dockerfile的通用准则和

    建议 159

    6.1.9 管理镜像 163

    6.2 Docker的应用程序开发准则 163

    6.2.1 尽可能缩减Docker镜像的

    大小 163

    6.2.2 持久化应用程序数据 164

    6.2.3 尽可能使用Swarm集群服务 164

    6.2.4 测试和部署时使用持续集成和

    持续部署 164

    6.2.5 了解开发环境和生产环境的

    区别 165

    6.3 将应用程序Docker化 165

    6.3.1 Docker化应用程序的基本流程 165

    6.3.2 将Node.js应用程序Docker化 165

    6.3.3 开发Node.js应用程序 166

    6.3.4 创建应用程序的镜像 169

    6.3.5 基于应用程序镜像运行容器 171

    6.4 习题 171

    第7章 自动化构建与持续集成 173

    7.1 概述 174

    7.1.1 镜像的自动化构建 174

    7.1.2 持续集成 175

    7.2 Docker Hub结合GitHub实现

    自动化构建 176

    7.2.1 在GitHub上创建代码仓库 176

    7.2.2 将Docker Hub连接到GitHub

    账户 178

    7.2.3 在Docker Hub上创建镜像

    仓库 179

    7.2.4 配置自动化构建选项和规则 181

    7.2.5 创建自动化构建项目 182

    7.2.6 基于代码仓库标签的自动化

    构建 184

    7.2.7 通过构建触发器触发自动化

    构建 186

    7.2.8 使用Webhook 186

    7.3 通过阿里云镜像服务实现自动化

    构建 187

    7.3.1 设置代码源 187

    7.3.2 创建代码仓库 189

    7.3.3 开始构建 190

    7.4 基于Jenkins和Docker组建

    持续集成环境 192

    7.4.1 准备工作 192

    7.4.2 部署GitLab服务器 193

    7.4.3 部署Docker注册服务器 195

    7.4.4 部署并配置Jenkins服务器 195

    7.4.5 新建Jenkins项目并进行构建 200

    7.4.6 通过GitLab自动触发Jenkins

    构建项目 203

    7.4.7 利用Jenkins的Docker插件来

    构建和推送镜像 207

    7.5 实现应用程序的持续集成和

    自动化部署 209

    7.5.1 准备工作 209

    7.5.2 部署持续集成环境 210

    7.5.3 准备源代码并将其提交到代码

    仓库 211

    7.5.4 为Tale应用程序构建镜像并

    推送到Docker注册服务器 211

    7.5.5 新建Maven项目进行构建并

    实现自动化部署 212

    7.5.6 实现项目的自动化构建 216

    7.6 习题 217

    第8章 Docker容器编排 218

    8.1 Docker容器编排基础 219

    8.1.1 Docker Compose的架构 219

    8.1.2 使用Docker Compose的基本

    步骤 220

    8.1.3 Docker Compose的特性 220

    8.1.4 Docker Compose的应用场合 220

    8.1.5 Docker Compose安装 221

    8.1.6 Docker Compose入门示例 222

    8.2 Compose文件 225

    8.2.1 Compose文件格式的不同版本 225

    8.2.2 Compose文件结构 226

    8.2.3 服务定义 227

    8.2.4 卷存储定义 231

    8.2.5 网络定义 232

    8.3 Compose命令行 232

    8.3.1 Compose命令行格式 232

    8.3.2 Compose主要命令简介 233

    8.4 Compose的环境变量 235

    8.4.1 Compose使用环境变量的方式 236

    8.4.2 不同位置定义的环境变量的

    优先级 237

    8.5 在Compose中设置网络 238

    8.5.1 默认网络的配置 238

    8.5.2 更新容器 239

    8.5.3 使用links选项 239

    8.5.4 指定自定义网络 239

    8.5.5 使用现有网络 240

    8.6 容器编排示例 240

    8.6.1 示例一:实现Web负载均衡 240

    8.6.2 示例二:在Linux上部署

    ASP.NET与SQL Server 242

    8.7 共享Compose通用配置 246

    8.7.1 使用多个Compose文件 246

    8.7.2 Compose文件追加和覆盖

    配置规则 248

    8.8 在生产环境中使用Compose 248

    8.8.1 针对生产环境修改Compose

    文件 248

    8.8.2 部署应用程序更改 249

    8.8.3 在单主机上运行Compose 249

    8.9 习题 249

    第9章 多主机部署与管理 250

    9.1 通过Docker Machine部署和

    管理多主机 251

    9.1.1 Docker Machine概述 251

    9.1.2 Docker Machine安装 252

    9.1.3 Docker Machine驱动 252

    9.1.4 通过Docker Machine远程

    安装和部署Docker 253

    9.1.5 通过Docker Machine管理

    Docker主机 255

    9.2 跨主机容器网络 256

    9.2.1 容器的跨主机通信方式 256

    9.2.2 使用macvlan网络 257

    9.2.3 使用overlay网络 260

    9.3 跨主机监控 266

    9.3.1 使用Weave Scope进行故障

    诊断与监控 266

    9.3.2 Prometheus基础 270

    9.3.3 部署Prometheus系统监控

    Docker主机和容器 273

    9.4 习题 285

    第10章 Docker Swarm

     集群 287

    10.1 Docker Swarm基础 288

    10.1.1 Docker Swarm模式 288

    10.1.2 Docker Swarm主要概念 288

    10.1.3 Swarm节点工作机制 290

    10.1.4 Swarm服务工作机制 291

    10.1.5 使用PKI管理Swarm安全性 292

    10.1.6 Swarm任务状态 293

    10.2 Docker Swarm基本操作 294

    10.2.1 设置运行环境 294

    10.2.2 创建Swarm集群 295

    10.2.3 将节点加入Swarm集群 295

    10.2.4 将服务部署到Swarm集群 296

    10.2.5 增加和缩减服务 297

    10.2.6 故障迁移与重新平衡 298

    10.2.7 删除Swarm服务 299

    10.2.8 对服务进行滚动更新 300

    10.2.9 管理节点 302

    10.2.10 发布服务端口 304

    10.3 管理Swarm服务网络 306

    10.3.1 配置overlay网络 306

    10.3.2 创建和配置连接overlay

     网络的Swarm服务 308

    10.3.3 服务发现与内部容器之间的

     通信 309

    10.3.4 在overlay网络上使用

     独立容器 311

    10.4 通过堆栈在Swarm集群中部署

     分布式应用 311

    10.4.1 Docker堆栈概述 312

    10.4.2 示例一:Swarm堆栈部署

     入门 314

    10.4.3 示例二:Swarm集群多节点的

     堆栈部署 317

    10.5 管理敏感数据 319

    10.5.1 Docker机密数据的应用 320

    10.5.2 Docker如何管理机密数据 320

    10.5.3 Docker机密数据管理命令 320

    10.5.4 示例一:Docker机密数据

     操作入门 321

    10.5.5 示例二:配置Nginx服务使用

     机密数据 322

    10.5.6 在Compose文件中使用Docker

     机密数据 324

    10.5.7 将Docker机密数据置入

     镜像中 326

    10.6 存储服务配置数据 326

    10.6.1 Docker配置数据概述 326

    10.6.2 示例一:Docker配置数据操作

     入门 327

    10.6.3 示例二:配置Nginx服务使用

     配置数据 327

    10.6.4 替换服务的配置数据 328

    10.7 习题 329

    第11章 生产环境中的Docker

     运维 330

    11.1 配置和管理Docker守护进程 331

    11.1.1 配置并运行Docker守护

     进程 331

    11.1.2 排查Docker守护进程故障 332

    11.1.3 使用systemd控制Docker 334

    11.2 配置Docker对象 335

    11.2.1 配置对象使用自定义元数据 335

    11.2.2 删除不用的对象 336

    11.2.3 格式化命令和日志的输出 336

    11.3 Docker安全 337

    11.3.1 Docker安全机制 337

    11.3.2 保护Docker守护进程套接字 340

    11.3.3 其他Docker安全措施 342

    11.4 使用插件扩展Docker 343

    11.4.1 Docker插件概述 343

    11.4.2 Docker插件安装和使用示例 344

    11.4.3 Docker插件开发示例 345

    11.5 离线部署和使用Docker 346

    11.5.1 离线安装Docker 346

    11.5.2 在离线环境中导入镜像 347

    11.5.3 离线建立私有Docker注册

     中心 348

    11.6 习题 348
  • 内容简介:
    本书针对容器技术与应用的实际需求,讲解主流容器平台Docker的应用和运维的技术方法,内容包括Docker基础与安装、镜像管理、容器管理、Docker网络配置、Docker存储管理、Docker应用程序开发、镜像自动化构建、持续集成和自动化部署、多容器编排、多主机管理和Docker容器集群平台,以及生产环境中的Docker运维。
  • 作者简介:
    钟小平,已出版的科技零售书15579《网络服务器配置与应用(第3版)》,累计销量36000册。写作能力和专业素养都非常不错。
  • 目录:
    第1章  Docker基础  1

    1.1 Docker的概念 2

    1.1.1 什么是Docker 2

    1.1.2 镜像与容器 2

    1.1.3 容器与虚拟机 3

    1.1.4 Docker引擎 3

    1.1.5 Docker生态系统 4

    1.2 Docker的应用 4

    1.2.1 实现应用程序快速、一致的交付 4

    1.2.2 响应式部署和应用程序 5

    1.2.3 运行更多的工作负载 5

    1.2.4 部署微服务应用 5

    1.3 Docker架构 5

    1.3.1 Docker客户端 6

    1.3.2 Docker守护进程 6

    1.3.3 Docker注册中心 6

    1.3.4 Docker对象 6

    1.4 Docker底层技术 7

    1.4.1 名称空间 7

    1.4.2 控制组 8

    1.4.3 联合文件系统 9

    1.4.4 容器格式 9

    1.5 安装Docker 10

    1.5.1 Docker的版本 10

    1.5.2 Docker所支持的平台 11

    1.5.3 安装Docker的准备工作 11

    1.5.4 使用软件仓库安装Docker CE 14

    1.5.5 通过便捷脚本安装Docker CE 15

    1.5.6 卸载Docker 16

    1.5.7 安装Docker之后的配置 16

    1.6 docker命令行的使用 19

    1.6.1 docker命令行接口类型 19

    1.6.2 docker命令列表 19

    1.6.3 docker命令的基本用法 21

    1.6.4 docker命令示例 22

    1.7 Docker API 22

    1.7.1 Docker API类型 22

    1.7.2 使用Docker API 23

    1.8 Docker配置文件格式 23

    1.8.1 JSON格式 23

    1.8.2 YAML格式 24

    1.9 习题 26

    第2章 Docker镜像 27

    2.1 Docker镜像基础 28

    2.1.1 进一步理解镜像的概念 28

    2.1.2 镜像的基本信息与标识 28

    2.1.3 镜像描述文件Dockerfile 29

    2.1.4 父镜像与基础镜像 29

    2.1.5 镜像的分层结构 30

    2.1.6 镜像操作命令 32

    2.2 Docker镜像的基本操作 32

    2.2.1 拉取镜像 32

    2.2.2 显示镜像列表 33

    2.2.3 设置镜像标签 35

    2.2.4 查看镜像详细信息 36

    2.2.5 查看镜像的构建历史以验证

    镜像分层 36

    2.2.6 查找镜像 37

    2.2.7 删除本地镜像 38

    2.2.8 Docker镜像的导入和导出 39

    2.3 Docker注册中心 40

    2.3.1 Docker注册中心与仓库 40

    2.3.2 Docker Hub 41

    2.3.3 阿里云的容器镜像服务 47

    2.3.4 私有Docker注册中心 49

    2.4 习题 51

    第3章 Docker容器 52

    3.1 Docker容器基础 53

    3.1.1 进一步理解容器的概念 53

    3.1.2 容器的基本信息与标识 53

    3.1.3 可写的容器层 54

    3.1.4 磁盘上的容器大小 54

    3.1.5 “写时拷贝”策略 55

    3.1.6 容器操作命令 58

    3.2 Docker容器的基本操作 58

    3.2.1 创建和运行容器 58

    3.2.2 启动和停止容器 64

    3.2.3 查看容器信息 65

    3.2.4 进入容器执行操作 67

    3.2.5 删除容器 69

    3.2.6 导出与导入容器 69

    3.2.7 基于容器创建镜像 70

    3.3 限制容器运行的资源 72

    3.3.1 限制容器的内存使用 72

    3.3.2 限制容器的CPU使用 74

    3.3.3 块IO带宽限制 75

    3.3.4 资源限制的实现机制——控制组 77

    3.3.5 动态更改容器的配置 77

    3.4 容器监控 78

    3.4.1 Docker容器监控命令 78

    3.4.2 使用cAdvisor监控容器 79

    3.5 容器的日志管理 81

    3.5.1 使用docker logs命令查看容器

    日志 81

    3.5.2 配置日志驱动重定向容器的

    日志记录 82

    3.6 习题 83

    第4章 Docker网络 84

    4.1 Docker网络基础 85

    4.1.1 Docker容器网络模型 85

    4.1.2 Linux网络基础 87

    4.1.3 单主机与多主机的Docker网络 88

    4.1.4 docker run命令的网络配置用法 88

    4.1.5 docker network命令的网络

    配置用法 89

    4.2 配置容器的网络连接 90

    4.2.1 使用默认桥接网络 90

    4.2.2 使用主机网络 94

    4.2.3 使用none网络模式 95

    4.2.4 使用container网络模式 96

    4.2.5 用户自定义桥接网络 97

    4.3 容器与外部的网络通信 105

    4.3.1 容器访问外部网络 105

    4.3.2 从外部网络访问容器 106

    4.4 容器之间的网络通信 109

    4.4.1 容器之间的网络通信的解决

    方案 109

    4.4.2 以传统方式建立容器连接 110

    4.5 习题 113

    第5章 Docker存储 114

    5.1 Docker存储驱动及其选择 115

    5.1.1 概述 115

    5.1.2 Docker版本所支持的存储驱动 116

    5.1.3 Docker存储驱动所支持的底层

    文件系统 116

    5.1.4 选择存储驱动需考虑的其他

    事项 117

    5.1.5 检查当前的存储驱动 117

    5.2 使用overlay2存储驱动 118

    5.2.1 使用overlay2存储驱动的要求 118

    5.2.2 配置Docker使用overlay2存储

    驱动 119

    5.2.3 overlay2存储驱动的工作机制 122

    5.2.4 容器使用overlay2存储驱动的

    读写机制 126

    5.2.5 OverlayFS与Docker性能 127

    5.3 迁移Docker根目录 127

    5.4 Docker存储的挂载类型 128

    5.4.1 Docker卷与存储驱动 128

    5.4.2 选择合适的挂载类型 129

    5.4.3 docker run命令的存储配置

    基本用法 130

    5.5 使用Docker卷 130

    5.5.1 卷的优势 130

    5.5.2 选择-v或--mount选项 131

    5.5.3 创建和管理卷 131

    5.5.4 启动带有卷的容器 132

    5.5.5 使用容器填充卷 133

    5.5.6 使用只读卷 133

    5.5.7 删除卷 133

    5.6 使用绑定挂载 134

    5.6.1 绑定挂载的功能限制 134

    5.6.2 选择-v或--mount选项 134

    5.6.3 容器使用绑定挂载 135

    5.6.4 使用只读的绑定挂载 136

    5.6.5 配置SELinux标签 137

    5.7 使用tmpfs挂载 137

    5.7.1 tmpfs挂载的特点 138

    5.7.2 选择--tmpfs或--mount选项 138

    5.7.3 在容器中使用tmpfs挂载 138

    5.7.4 指定tmpfs参数 139

    5.8 使用卷容器 139

    5.8.1 通过卷容器实现容器之间的

    数据共享 139

    5.8.2 通过卷容器来备份、恢复和迁移

    数据卷 140

    5.9 容器的数据共享 140

    5.9.1 容器与主机共享数据 140

    5.9.2 容器之间共享数据 141

    5.10 习题 141

    第6章 开发基于Docker的

     应用程序 143

    6.1 开发Docker镜像 144

    6.1.1 进一步了解Dockerfile 144

    6.1.2 通过Dockerfile构建镜像的基本

    方法 144

    6.1.3 Dockerfile常用指令 146

    6.1.4 Dockerfile示例 152

    6.1.5 基于Dockerfile构建镜像 153

    6.1.6 创建基础镜像 156

    6.1.7 使用多阶段构建 157

    6.1.8 编写Dockerfile的通用准则和

    建议 159

    6.1.9 管理镜像 163

    6.2 Docker的应用程序开发准则 163

    6.2.1 尽可能缩减Docker镜像的

    大小 163

    6.2.2 持久化应用程序数据 164

    6.2.3 尽可能使用Swarm集群服务 164

    6.2.4 测试和部署时使用持续集成和

    持续部署 164

    6.2.5 了解开发环境和生产环境的

    区别 165

    6.3 将应用程序Docker化 165

    6.3.1 Docker化应用程序的基本流程 165

    6.3.2 将Node.js应用程序Docker化 165

    6.3.3 开发Node.js应用程序 166

    6.3.4 创建应用程序的镜像 169

    6.3.5 基于应用程序镜像运行容器 171

    6.4 习题 171

    第7章 自动化构建与持续集成 173

    7.1 概述 174

    7.1.1 镜像的自动化构建 174

    7.1.2 持续集成 175

    7.2 Docker Hub结合GitHub实现

    自动化构建 176

    7.2.1 在GitHub上创建代码仓库 176

    7.2.2 将Docker Hub连接到GitHub

    账户 178

    7.2.3 在Docker Hub上创建镜像

    仓库 179

    7.2.4 配置自动化构建选项和规则 181

    7.2.5 创建自动化构建项目 182

    7.2.6 基于代码仓库标签的自动化

    构建 184

    7.2.7 通过构建触发器触发自动化

    构建 186

    7.2.8 使用Webhook 186

    7.3 通过阿里云镜像服务实现自动化

    构建 187

    7.3.1 设置代码源 187

    7.3.2 创建代码仓库 189

    7.3.3 开始构建 190

    7.4 基于Jenkins和Docker组建

    持续集成环境 192

    7.4.1 准备工作 192

    7.4.2 部署GitLab服务器 193

    7.4.3 部署Docker注册服务器 195

    7.4.4 部署并配置Jenkins服务器 195

    7.4.5 新建Jenkins项目并进行构建 200

    7.4.6 通过GitLab自动触发Jenkins

    构建项目 203

    7.4.7 利用Jenkins的Docker插件来

    构建和推送镜像 207

    7.5 实现应用程序的持续集成和

    自动化部署 209

    7.5.1 准备工作 209

    7.5.2 部署持续集成环境 210

    7.5.3 准备源代码并将其提交到代码

    仓库 211

    7.5.4 为Tale应用程序构建镜像并

    推送到Docker注册服务器 211

    7.5.5 新建Maven项目进行构建并

    实现自动化部署 212

    7.5.6 实现项目的自动化构建 216

    7.6 习题 217

    第8章 Docker容器编排 218

    8.1 Docker容器编排基础 219

    8.1.1 Docker Compose的架构 219

    8.1.2 使用Docker Compose的基本

    步骤 220

    8.1.3 Docker Compose的特性 220

    8.1.4 Docker Compose的应用场合 220

    8.1.5 Docker Compose安装 221

    8.1.6 Docker Compose入门示例 222

    8.2 Compose文件 225

    8.2.1 Compose文件格式的不同版本 225

    8.2.2 Compose文件结构 226

    8.2.3 服务定义 227

    8.2.4 卷存储定义 231

    8.2.5 网络定义 232

    8.3 Compose命令行 232

    8.3.1 Compose命令行格式 232

    8.3.2 Compose主要命令简介 233

    8.4 Compose的环境变量 235

    8.4.1 Compose使用环境变量的方式 236

    8.4.2 不同位置定义的环境变量的

    优先级 237

    8.5 在Compose中设置网络 238

    8.5.1 默认网络的配置 238

    8.5.2 更新容器 239

    8.5.3 使用links选项 239

    8.5.4 指定自定义网络 239

    8.5.5 使用现有网络 240

    8.6 容器编排示例 240

    8.6.1 示例一:实现Web负载均衡 240

    8.6.2 示例二:在Linux上部署

    ASP.NET与SQL Server 242

    8.7 共享Compose通用配置 246

    8.7.1 使用多个Compose文件 246

    8.7.2 Compose文件追加和覆盖

    配置规则 248

    8.8 在生产环境中使用Compose 248

    8.8.1 针对生产环境修改Compose

    文件 248

    8.8.2 部署应用程序更改 249

    8.8.3 在单主机上运行Compose 249

    8.9 习题 249

    第9章 多主机部署与管理 250

    9.1 通过Docker Machine部署和

    管理多主机 251

    9.1.1 Docker Machine概述 251

    9.1.2 Docker Machine安装 252

    9.1.3 Docker Machine驱动 252

    9.1.4 通过Docker Machine远程

    安装和部署Docker 253

    9.1.5 通过Docker Machine管理

    Docker主机 255

    9.2 跨主机容器网络 256

    9.2.1 容器的跨主机通信方式 256

    9.2.2 使用macvlan网络 257

    9.2.3 使用overlay网络 260

    9.3 跨主机监控 266

    9.3.1 使用Weave Scope进行故障

    诊断与监控 266

    9.3.2 Prometheus基础 270

    9.3.3 部署Prometheus系统监控

    Docker主机和容器 273

    9.4 习题 285

    第10章 Docker Swarm

     集群 287

    10.1 Docker Swarm基础 288

    10.1.1 Docker Swarm模式 288

    10.1.2 Docker Swarm主要概念 288

    10.1.3 Swarm节点工作机制 290

    10.1.4 Swarm服务工作机制 291

    10.1.5 使用PKI管理Swarm安全性 292

    10.1.6 Swarm任务状态 293

    10.2 Docker Swarm基本操作 294

    10.2.1 设置运行环境 294

    10.2.2 创建Swarm集群 295

    10.2.3 将节点加入Swarm集群 295

    10.2.4 将服务部署到Swarm集群 296

    10.2.5 增加和缩减服务 297

    10.2.6 故障迁移与重新平衡 298

    10.2.7 删除Swarm服务 299

    10.2.8 对服务进行滚动更新 300

    10.2.9 管理节点 302

    10.2.10 发布服务端口 304

    10.3 管理Swarm服务网络 306

    10.3.1 配置overlay网络 306

    10.3.2 创建和配置连接overlay

     网络的Swarm服务 308

    10.3.3 服务发现与内部容器之间的

     通信 309

    10.3.4 在overlay网络上使用

     独立容器 311

    10.4 通过堆栈在Swarm集群中部署

     分布式应用 311

    10.4.1 Docker堆栈概述 312

    10.4.2 示例一:Swarm堆栈部署

     入门 314

    10.4.3 示例二:Swarm集群多节点的

     堆栈部署 317

    10.5 管理敏感数据 319

    10.5.1 Docker机密数据的应用 320

    10.5.2 Docker如何管理机密数据 320

    10.5.3 Docker机密数据管理命令 320

    10.5.4 示例一:Docker机密数据

     操作入门 321

    10.5.5 示例二:配置Nginx服务使用

     机密数据 322

    10.5.6 在Compose文件中使用Docker

     机密数据 324

    10.5.7 将Docker机密数据置入

     镜像中 326

    10.6 存储服务配置数据 326

    10.6.1 Docker配置数据概述 326

    10.6.2 示例一:Docker配置数据操作

     入门 327

    10.6.3 示例二:配置Nginx服务使用

     配置数据 327

    10.6.4 替换服务的配置数据 328

    10.7 习题 329

    第11章 生产环境中的Docker

     运维 330

    11.1 配置和管理Docker守护进程 331

    11.1.1 配置并运行Docker守护

     进程 331

    11.1.2 排查Docker守护进程故障 332

    11.1.3 使用systemd控制Docker 334

    11.2 配置Docker对象 335

    11.2.1 配置对象使用自定义元数据 335

    11.2.2 删除不用的对象 336

    11.2.3 格式化命令和日志的输出 336

    11.3 Docker安全 337

    11.3.1 Docker安全机制 337

    11.3.2 保护Docker守护进程套接字 340

    11.3.3 其他Docker安全措施 342

    11.4 使用插件扩展Docker 343

    11.4.1 Docker插件概述 343

    11.4.2 Docker插件安装和使用示例 344

    11.4.3 Docker插件开发示例 345

    11.5 离线部署和使用Docker 346

    11.5.1 离线安装Docker 346

    11.5.2 在离线环境中导入镜像 347

    11.5.3 离线建立私有Docker注册

     中心 348

    11.6 习题 348
查看详情
12
相关图书 / 更多
Docker容器技术与运维
Docker与Kubernetes容器虚拟化技术与应用
倪振松 刘宏嘉 陈建平 主编;谢岳富 副主编
Docker容器技术与运维
Doctor-Patient Communication 医患沟通(英文版)(创新教材)
王锦帆;尹梅
Docker容器技术与运维
Docker+Kubernetes容器实战派
赵渝强
Docker容器技术与运维
Dolby Atmos杜比全景声混音指南
(德)埃德加·罗瑟米奇(Edgar Rothermich)
Docker容器技术与运维
Docker快速入门
赵荣娇
Docker容器技术与运维
Docker与Kubernetes容器运维实战
王启明 肖志健
Docker容器技术与运维
Docker容器管理与应用项目教程
吴进 杨运强
Docker容器技术与运维
Docker实战派——容器入门七步法
王嘉涛
Docker容器技术与运维
Docker容器技术
张婵 王新强
Docker容器技术与运维
Docker容器项目实战
龚斌
Docker容器技术与运维
Doris实时数仓实战
王春波 著
Docker容器技术与运维
Do Re Mi幼儿趣味识谱(全四册精美礼盒装)(超简单的幼儿乐谱读写)
高桥千佳子
您可能感兴趣 / 更多
Docker容器技术与运维
看法
李树峰
Docker容器技术与运维
时代与方位中国当代纪实摄影家作品展
李树峰 著
Docker容器技术与运维
摄影艺术概论
李树峰 著
Docker容器技术与运维
两岸文化发展与创新/第四届两岸文化发展论坛文集
李树峰、汪文顶 编
Docker容器技术与运维
中国艺术研究院学术文库:摄影式观看
李树峰 著
Docker容器技术与运维
图说灾难逃生自救丛书·矿难
李树峰 编
Docker容器技术与运维
看与见
李树峰 著
Docker容器技术与运维
视觉百年:澳门摄影
李树峰 著