阿西河

所有教程

公众号
🌙
阿西河前端的公众号

我的收藏

    最近访问  (文章)

    教程列表

    数据库
    抓包专区
    测试专区

    Docker 技术入门与实战

    Docker 技术入门与实战

    编辑推荐

    适读人群 :1. 云计算开发人员。2. 网络应用开发与管理人员。 入门 Docker 的首本书,经典畅销书升级,系统化掌握容器技术栈,第 3 版基于 Docker 新 18.x 系列版本。

    内容简介

    本书从 Docker 基本原理开始,深入浅出地讲解 Docker 的构建与操作,内容系统全面,可帮助开发人员、运维人员快速部署 Docker 应用。本书分为四大部分:基础入门、实战案例、进阶技能、开源项目,部分(第 1~8 章)介绍 Docker 与虚拟化技术的基本概念,包括安装、镜像、容器、仓库、数据卷、端口映射等;第二部分(第 9~16 章)通过案例介绍 Docker 的应用方法,包括与各种操作系统平台、SSH 服务的镜像、Web 服务器与应用、数据库的应用、各类编程语言的接口、容器云等,还介绍了作者在容器实战中的思考与经验总结;第三部分(第 17~21 章)介绍一些进阶技能,如 Docker 核心技术实现原理、安全、高级网络配置、libnetwork 插件化网络功能等;第四部分(第 22~28 章)介绍与容器开发相关的开源项目,包括 Etcd、Docker Machine、Docker Compose、Docker Swarm、Mesos、Kubernetes 等。第 3 版根据 Docker 18.x 系列版本对全书内容进行了全面修订。

    作者简介

    杨保华,博士,现为甲骨文架构师。研究方向包括分布式系统、大数据和算法设计等,是容器、网络虚拟化、区块链等技术的早期研究者和布道者。他倡导技术创新与产品、市场相结合,曾负责多个大型平台的架构和设计,以及企业系统的实现和实施。他热爱开源文化,曾积极贡献了多个开源项目。

    目录

    第 3 版前言

    第一部分 基础入门

    第 1 章 初识 Docker 与容器 3

    • 1.1 什么是 Docker 3
    • 1.2 为什么要使用 Docker 6
    • 1.3 Docker 与虚拟化 8
    • 1.4 本章小结 9

    第 2 章 核心概念与安装配置 10

    • 2.1 核心概念 10
    • 2.2 安装 Docker 引擎 11
    • 2.2.1 Ubuntu 环境下安装 Docker 12
    • 2.2.2 CentOS 环境下安装 Docker 14
    • 2.2.3 通过脚本安装 15
    • 2.2.4 macOS 环境下安装 Docker 15
    • 2.2.5 Windows 环境下安装 Docker 23
    • 2.3 配置 Docker 服务 26
    • 2.4 推荐实践环境 27
    • 2.5 本章小结 27

    第 3 章 使用 Docker 镜像 28

    • 3.1 获取镜像 28
    • 3.2 查看镜像信息 30
    • 3.3 搜寻镜像 32
    • 3.4 删除和清理镜像 33
    • 3.5 创建镜像 35
    • 3.6 存出和载入镜像 36
    • 3.7 上传镜像 37
    • 3.8 本章小结 38

    第 4 章 操作 Docker 容器 39

    • 4.1 创建容器 39
    • 4.2 停止容器 44
    • 4.3 进入容器 46
    • 4.4 删除容器 47
    • 4.5 导入和导出容器 48
    • 4.6 查看容器 49
    • 4.7 其他容器命令 50
    • 4.8 本章小结 52

    第 5 章 访问 Docker 仓库 53

    • 5.1 Docker Hub 公共镜像市场 53
    • 5.2 第三方镜像市场 55
    • 5.3 搭建本地私有仓库 56
    • 5.4 本章小结 58

    第 6 章 Docker 数据管理 59

    • 6.1 数据卷 59
    • 6.2 数据卷容器 60
    • 6.3 利用数据卷容器来迁移数据 62
    • 6.4 本章小结 62

    第 7 章 端口映射与容器互联 63

    • 7.1 端口映射实现容器访问 63
    • 7.2 互联机制实现便捷互访 64
    • 7.3 本章小结 67

    第 8 章 使用 Dockerfile 创建镜像 68

    • 8.1 基本结构 68
    • 8.2 指令说明 70
    • 8.2.1 配置指令 71
    • 8.2.2 操作指令 74
    • 8.3 创建镜像 75
    • 8.3.1 命令选项 76
    • 8.3.2 选择父镜像 77
    • 8.3.3 使用。dockerignore 文件 77
    • 8.3.4 多步骤创建 78
    • 8.4 最佳实践 79
    • 8.5 本章小结 80

    第二部分 实战案例

    第 9 章 操作系统 83

    • 9.1 BusyBox 83
    • 9.2 Alpine 85
    • 9.3 Debian/Ubuntu 86
    • 9.4 CentOS/Fedora 88
    • 9.5 本章小结 89

    第 10 章 为镜像添加 SSH 服务 90

    • 10.1 基于 commit 命令创建 90
    • 10.2 使用 Dockerfile 创建 93
    • 10.3 本章小结 95

    第 11 章 Web 服务与应用 96

    • 11.1 Apache 96
    • 11.2 Nginx 100
    • 11.3 Tomcat 104
    • 11.4 Jetty 108
    • 11.5 LAMP 109
    • 11.6 持续开发与管理 111
    • 11.7 本章小结 114

    第 12 章 数据库应用 115

    • 12.1 MySQL 115
    • 12.2 Oracle Database XE 117
    • 12.3 MongoDB 118
    • 12.4 Redis 124
    • 12.5 Cassandra 126
    • 12.6 本章小结 129

    第 13 章 分布式处理与大数据平台 130

    • 13.1 Hadoop 130
    • 13.2 Spark 133
    • 13.3 Storm 136
    • 13.4 Elasticsearch 140
    • 13.5 本章小结 141

    第 14 章 编程开发 142

    • 14.1 C/C++ 142
    • 14.2 Java 146
    • 14.3 Python 149
    • 14.3.1 使用 Python 官方镜像 150
    • 14.3.2 使用 PyPy 151
    • 14.3.3 使用 Flask 151
    • 14.3.4 相关资源 154
    • 14.4 JavaScript 154
    • 14.4.1 使用 Node.js 154
    • 14.4.2 相关资源 158
    • 14.5 Go 158
    • 14.6 本章小结 161

    第 15 章 容器与云服务 162

    • 15.1 公有云容器服务 162
    • 15.1.1 AWS 162
    • 15.1.2 Google Cloud Platform 163
    • 15.1.3 Azure 164
    • 15.1.4 腾讯云 165
    • 15.1.5 阿里云 165
    • 15.1.6 华为云 166
    • 15.1.7 UCloud 167
    • 15.2 容器云服务 168
    • 15.3 阿里云容器服务 172
    • 15.4 时速云介绍 174
    • 15.5 本章小结 175

    第 16 章 容器实战思考 176

    • 16.1 Docker 为什么会成功 176
    • 16.2 研发人员该如何看待容器 177
    • 16.3 容器化开发模式 178
    • 16.4 容器与生产环境 180
    • 16.5 本章小结 182

    第三部分 进阶技能

    第 17 章 核心实现技术 185

    • 17.1 基本架构 185
    • 17.2 命名空间 187
    • 17.3 控制组 191
    • 17.4 联合文件系统 193
    • 17.5 Linux 网络虚拟化 195
    • 17.6 本章小结 197

    第 18 章 配置私有仓库 199

    • 18.1 安装 Docker Registry 199
    • 18.2 配置 TLS 证书 201
    • 18.3 管理访问权限 202
    • 18.4 配置 Registry 205
    • 18.5 批量管理镜像 211
    • 18.6 使用通知系统 214
    • 18.7 本章小结 217

    第 19 章 安全防护与配置 218

    • 19.1 命名空间隔离的安全 218
    • 19.2 控制组资源控制的安全 219
    • 19.3 内核能力机制 219
    • 19.4 Docker 服务端的防护 221
    • 19.5 更多安全特性的使用 221
    • 19.6 使用第三方检测工具 222
    • 19.6.1 Docker Bench 222
    • 19.6.2 clair 223
    • 19.7 本章小结 224

    第 20 章 高级网络功能 225

    • 20.1 启动与配置参数 225
    • 20.2 配置容器 DNS 和主机名 227
    • 20.3 容器访问控制 228
    • 20.4 映射容器端口到宿主主机的实现 229
    • 20.5 配置容器网桥 231
    • 20.6 自定义网桥 232
    • 20.7 使用 OpenvSwitch 网桥 233
    • 20.8 创建一个点到点连接 235
    • 20.9 本章小结 236

    第 21 章 libnetwork 插件化网络功能 237

    • 21.1 容器网络模型 237
    • 21.2 Docker 网络命令 238
    • 21.3 构建跨主机容器网络 241
    • 21.4 本章小结 243

    第四部分 开源项目

    第 22 章 Etcd—高可用的键值数据库 247

    • 22.1 Etcd 简介 247
    • 22.2 安装和使用 Etcd 248
    • 22.3 使用客户端命令 253
    • 22.3.1 数据类操作 255
    • 22.3.2 非数据类操作 258
    • 22.4 Etcd 集群管理 260
    • 22.4.1 构建集群 260
    • 22.4.2 集群参数配置 263
    • 22.5 本章小结 264

    第 23 章 Docker 三剑客之 Machine 265

    • 23.1 Machine 简介 265
    • 23.2 安装 Machine 265
    • 23.3 使用 Machine 266
    • 23.4 Machine 命令 268
    • 23.5 本章小结 272

    第 24 章 Docker 三剑客之 Compose 273

    • 24.1 Compose 简介 273
    • 24.2 安装与卸载 274
    • 24.3 Compose 模板文件 277
    • 24.4 Compose 命令说明 292
    • 24.5 Compose 环境变量 299
    • 24.6 Compose 应用案例一:Web 负载均衡 300
    • 24.7 Compose 应用案例二:大数据 Spark 集群 304
    • 24.8 本章小结 309

    第 25 章 Docker 三剑客之 Swarm 310

    • 25.1 Swarm 简介 310
    • 25.2 基本概念 311
    • 25.3 使用 Swarm 313
    • 25.4 使用服务命令 316
    • 25.5 本章小结 319

    第 26 章 Mesos—优秀的集群资源调度平台 321

    • 26.1 简介 321
    • 26.2 Mesos 安装与使用 322
    • 26.3 原理与架构 330
    • 26.3.1 架构 330
    • 26.3.2 基本单元 331
    • 26.3.3 调度 331
    • 26.3.4 高可用性 332
    • 26.4 Mesos 配置解析 333
    • 26.4.1 通用项 333
    • 26.4.2 master 专属配置项 333
    • 26.4.3 slave 专属配置项 335
    • 26.5 日志与监控 338
    • 26.6 常见应用框架 340
    • 26.7 本章小结 341

    第 27 章 Kubernetes—生产级容器集群平台 343

    • 27.1 简介 343
    • 27.2 核心概念 345
    • 27.3 资源抽象对象 348
    • 27.3.1 容器组 348
    • 27.3.2 服务 349
    • 27.3.3 存储卷 350
    • 27.4 控制器抽象对象 351
    • 27.5 其他抽象对象 353
    • 27.6 快速体验 355
    • 27.7 重要组件 359
    • 27.7.1 Etcd 360
    • 27.7.2 kube-apiserver 360
    • 27.7.3 kube-scheduler 361
    • 27.7.4 kube-controller-manager 362
    • 27.7.5 kubelet 363
    • 27.7.6 kube-proxy 364
    • 27.8 使用 kubectl 365
    • 27.8.1 获取 kubectl 365
    • 27.8.2 命令格式 366
    • 27.8.3 全局参数 367
    • 27.8.4 通用子命令 369
    • 27.9 网络设计 372
    • 27.10 本章小结 374

    第 28 章 其他相关项目 375

    • 28.1 持续集成 375
    • 28.2 容器管理 377
    • 28.2.1 Portainer 377
    • 28.2.2 Panamax 378
    • 28.2.3 Seagull 378
    • 28.3 编程开发 380
    • 28.4 网络支持 381
    • 28.4.1 Pipework 381
    • 28.4.2 Flannel 项目 382
    • 28.4.3 Weave Net 项目 382
    • 28.4.4 Calico 项目 383
    • 28.5 日志处理 383
    • 28.6 服务代理 385
    • 28.7 标准与规范 389
    • 28.8 其他项目 392
    • 28.9 本章小结 396
    • 附录
    • 附录 A 常见问题总结 398
    • 附录 B Docker 命令查询 404
    • 附录 C 参考资源链接 411
    卖前端学习教程

    只需几十元,就能买到培训班的内部教程!开启高薪之路!

    零基础小白阿里P7的教程都有!

    同时长期收购所有培训班的前端教程

    目录
    目录