新書推薦:

《
索恩丛书·伊凡雷帝:俄国的第一位沙皇
》
售價:HK$
141.9
![[共2册]利他性销售+利他式表达全2册正版书籍破解销售密码实现业绩狂飙洞察客户未言明核心需求痛点成交](//img.megbook.hk/upload/mall/productImages/26/10/9787547753248.jpg)
《
[共2册]利他性销售+利他式表达全2册正版书籍破解销售密码实现业绩狂飙洞察客户未言明核心需求痛点成交
》
售價:HK$
151.8

《
折姜(中)
》
售價:HK$
51.5

《
清华大学藏战国竹简校释(伍):《筮法》诸篇
》
售價:HK$
107.8

《
我们都会变有钱:投资的道与术
》
售價:HK$
63.8

《
人体使用指南:没有什么比身体更重要
》
售價:HK$
92.0

《
黄土馆事件
》
售價:HK$
80.2

《
“一国两制”下香港维护国家安全的实践(16开本繁体字版)
》
售價:HK$
18.9
|
| 編輯推薦: |
|
作为陪伴 Docker 技术从诞生到成熟的畅销经典,本书第 4 版紧跟容器技术发展浪潮,构建了贴合当下实践的实用技术体系 —— 不仅补充高级构建、新编排工具、增强安全机制与性能优化等新特性,还摒弃了Docker Machine、Mesos 等不再活跃的工具与项目,确保内容的时效性与实用性。全书以 “基础入门 — 实战案例 — 进阶技能 — 开源项目” 为清晰脉络,既深入浅出地讲解 Docker 的核心概念、常用命令与底层实现原理,又通过操作系统、Web 服务、数据库、大数据、多语言开发等丰富场景案例,助力读者快速落地实践;同时详细解析 Etcd、Docker Compose、Swarm、Kubernetes 等核心开源项目,完整覆盖容器生态全景,帮助读者更快、更深入地掌握和使用容器技术。
|
| 內容簡介: |
Docker和容器化计算技术一直在不断创新和发展。十多年前,本书首版面市,见证了 Docker技术的发展,为了让读者更深入地理解和掌握新的容器技术,第4版中补充了一些新特性(如高级构建功能),同时也摒弃了一些过时的工具和项目(如Docker Machine项目)。 全书分为四部分:第一部分简要介绍 Docker 的基础知识和常用命令;第二部分详述在各种典型场景中如何运用容器技术,包括操作系统、Web服务、数据库、分布式处理和大数据、编程开发以及容器云等;第三部分深入讲解高级容器技巧,包括实现原理、私有仓库、安全防护、高级网络功能和网络插件;第四部分展示与容器相关的开源项目,包括Etcd、Compose、Swarm、Kubernetes等。这些项目让使用容器技术变得更加有效率,使容器平台更加稳定和智能,共同构建了一个繁荣的容器化计算生态。
|
| 關於作者: |
杨保华 博士,信息科技行业资深专家。兴趣方向包括分布式系统、人工智能和软件架构等,是容器、网络虚拟化、区块链等技术的早期研究和推动者。他倡导技术创新与产品、市场相结合,曾负责多个大型计算平台产品的架构和设计,以及企业系统的实现和实施。他热爱开源文化,曾积极贡献多个开源项目。
戴王剑 资深计算机专家。十多年来一直从事系统平台、计算机网络、服务器架构设计,负责过多个省级项目的架构设计。
曹亚仑 云原生SRE,十年来一直从事云平台运维稳定性工作,负责过多个重大项目的运维体系建设。现为某云厂商专有云运维专家组成员,历任存储产品线DevOps工程师、云技术经理(TAM)、故障应急值班长。2014年开始从事Docker相关技术研究,并在管控容器化及混合云DevOps项目中进行大量实践。此外,在企业级云原生运维、混合云运维稳定性体系建设及故障应急处置方面有丰富的经验。
|
| 目錄:
|
目 录 Contents 前言 第一部分 基础入门 第1章 初识Docker与容器 3 1.1 什么是Docker 3 1.2 为什么使用Docker 5 1.3 Docker与虚拟化 7 1.4 本章小结 8 第2章 核心概念与安装配置 9 2.1 核心概念 9 2.2 安装Docker引擎 11 2.2.1 Docker引擎版本 11 2.2.2 在Linux环境下安装Docker 引擎 12 2.3 安装Docker桌面版 13 2.3.1 在macOS环境下安装Docker 桌面版 14 2.3.2 在Windows环境下安装 Docker桌面版 16 2.4 配置Docker服务 17 2.5 推荐实践环境 18 2.6 本章小结 18 第3章 使用Docker镜像 19 3.1 获取镜像 19 3.2 查看镜像信息 21 3.3 搜寻镜像 24 3.4 删除和清理镜像 24 3.5 创建镜像 26 3.6 导出和载入镜像 28 3.7 上传镜像 29 3.8 本章小结 29 第4章 操作Docker容器 30 4.1 创建容器 30 4.1.1 新建容器 30 4.1.2 启动容器 34 4.1.3 新建并启动容器 34 4.1.4 守护态运行 35 4.1.5 查看容器输出 36 4.2 停止容器 36 4.3 进入容器 37 4.4 删除容器 39 4.5 导入和导出容器 39 4.6 查看容器 41 4.7 其他容器命令 42 4.8 本章小结 43 第5章 访问Docker仓库 45 5.1 Docker Hub公共镜像市场 45 5.2 搭建本地私有仓库 49 5.3 本章小结 51 第6章 Docker数据管理 52 6.1 数据卷 52 6.2 数据卷容器 54 6.3 利用数据卷容器迁移数据 55 6.4 本章小结 56 第7章 端口映射与容器互联 57 7.1 通过端口映射实现容器访问 57 7.2 通过互联机制实现便捷互访 58 7.3 本章小结 61 第8章 使用Dockerfile创建镜像 62 8.1 基本结构 62 8.2 指令说明 65 8.2.1 基本格式 65 8.2.2 解析器指令 66 8.2.3 环境变量替换 68 8.2.4 .dockerignore文件 69 8.2.5 FROM 70 8.2.6 RUN 71 8.2.7 RUN --mount 71 8.2.8 RUN --network 74 8.2.9 CMD 75 8.2.10 LABEL 76 8.2.11 EXPOSE 76 8.2.12 ENV 77 8.2.13 ADD 78 8.2.14 COPY 81 8.2.15 COPY/ADD --link 82 8.2.16 ENTRYPOINT 83 8.2.17 VOLUME 87 8.2.18 关于指定卷的注意事项 88 8.2.19 USER 88 8.2.20 WORKDIR 89 8.2.21 ARG 89 8.2.22 ONBUILD 93 8.2.23 STOPSIGNAL停止 信号 94 8.2.24 HEALTHCHECK 94 8.2.25 SHELL 95 8.3 创建镜像 97 8.3.1 命令选项 97 8.3.2 选择父镜像 98 8.3.3 使用.dockerignore文件 99 8.3.4 多步骤创建 99 8.4 最佳实践 100 8.5 本章小结 101 第9章 高级镜像构建 102 9.1 使用构建器 102 9.1.1 创建构建器 103 9.1.2 列出构建器 103 9.1.3 使用Remote远程构建套件 驱动 104 9.1.4 构建器磁盘清理 106 9.2 多步骤构建 107 9.2.1 单步骤构建的问题 107 9.2.2 使用多步骤构建 107 9.3 多平台镜像 109 9.4 使用GitHub Action 111 9.5 本章小结 116 第二部分 实战案例 第10章 操作系统 119 10.1 BusyBox 119 10.2 Alpine 120 10.3 Ubuntu 121 10.4 本章小结 123 第11章 Web服务与应用 124 11.1 Apache 124 11.2 Nginx 129 11.3 Tomcat 134 11.4 Jetty 135 11.5 LAMP 136 11.6 CMS 139 11.6.1 WordPress 139 11.6.2 Ghost 140 11.7 本章小结 141 第12章 数据库应用 142 12.1 MySQL 142 12.2 MongoDB 145 12.3 Redis 152 12.4 Memcached 154 12.5 本章小结 157 第13章 分布式处理与大数据 平台 158 13.1 RabbitMQ 158 13.2 Hadoop 161 13.3 Spark 164 13.4 Storm 166 13.5 Elasticsearch 169 13.6 本章小结 172 第14章 编程开发 173 14.1 C/C++ 173 14.1.1 GCC 173 14.1.2 LLVM 176 14.1.3 Clang 176 14.2 Java 178 14.2.1 Spring Boot 179 14.2.2 相关资源 182 14.3 Python 182 14.3.1 使用PyPy 184 14.3.2 使用Django 184 14.3.3 使用Flask 192 14.3.4 使用Sentry 195 14.3.5 相关资源 197 14.4 JavaScript 197 14.4.1 使用Node.js 197 14.4.2 相关资源 201 14.5 Go 201 14.5.1 Beego 204 14.5.2 Gogs:基于Go的Git 服务 208 14.5.3 相关资源 209 14.6 PHP 209 14.6.1 PHP常用框架 214 14.6.2 相关资源 216 14.7 Rust 216 14.8 本章小结 219 第15章 容器与云服务 220 15.1 云服务简介 220 15.2 AWS 221 15.3 谷歌云服务 223 15.4 Azure 云服务 226 15.5 阿里云容器服务 228 15.5.1 产品架构 231 15.5.2 应用场景 231 15.6 腾讯云容器服务 235 15.6.1 产品架构 237 15.6.2 应用场景 237 15.7 本章小结 240 第16章 容器实战思考 241 16.1 Docker为什么会成功 241 16.2 研发人员该如何看待容器 242 16.3 容器化开发模式 243 16.4 本章小结 247 第三部分 进阶技能 第17章 核心实现技术 251 17.1 基本架构 251 17.2 命名空间 253 17.3 控制组 257 17.4 联合文件系统 260 17.5 Linux网络虚拟化 262 17.6 本章小结 264 第18章 配置私有仓库 265 18.1 安装Docker Registry 265 18.2 配置TLS证书 267 18.3 管理访问权限 268 18.4 配置Registry 272 18.5 批量管理镜像 278 18.6 使用通知系统 280 18.7 使用Harbor搭建私有镜像仓库 283 18.8 本章小结 287 第19章 安全防护与配置 289 19.1 命名空间隔离的安全 290 19.2 控制组资源控制的安全 291 19.3 内核能力机制 291 19.4 Docker服务端的防护 292 19.5 更多安全特性的使用 293 19.6 使用第三方检测工具 294 19.7 本章小结 296 第20章 高级网络功能 297 20.1 启动与配置参数 297 20.2 配置容器DNS和主机名 299 20.3 容器访问控制 301 20.4 映射容器端口到宿主机的 实现 304 20.5 配置容器网桥 305 20.6 自定义网桥 306 20.7 使用OpenvSwitch网桥 307 20.8 创建一个点到点连接 309 20.9 本章小结 310 第21章 libnetwork插件化网络 功能 311 21.1 容器网络模型 311 21.2 Docker网络命令 312 21.3 构建跨主机容器网络 315 21.4 本章小结 318 第四部分 开源项目 第22章 Etcd——高可用的键值 数据库 321 22.1 安装和使用Etcd 322 22.1.1 二进制文件方式 322 22.1.2 Docker镜像方式下载 324 22.1.3 数据目录 324 22.1.4 服务启动参数 325 22.2 使用客户端命令 327 22.2.1 数据类操作 329 22.2.2 非数据类操作 330 22.3 Etcd集群管理 333 22.3.1 构建集群 333 22.3.2 集群配置优化 336 22.4 本章小结 338 第23章 Docker Compose——多容器 应用管理 339 23.1 安装与卸载 340 23.2 Compose模板文件 342 23.3 Compose命令说明 356 23.3.1 命令对象与格式 356 23.3.2 命令选项 356 23.3.3 命令使用说明 357 23.4 Compose环境变量 363 23.4.1 Compose中定义的环境 变量 363 23.4.2 在Compose文件中使用 环境变量 363 23.4.3 Compose应用案例一: Web负载均衡 364 23.4.4 Compose应用案例二: 大数据Spark集群 369 23.5 本章小结 373 第24章 Docker Swarm模式——跨主 机容器集群管理 374 24.1 Swarm模式简介 374 24.2 基本概念 375 24.3 使用服务命令 381 24.4 本章小结 384 第25章 Kubernetes——生产级容器 集群平台 385 25.1 主要版本历史 386 25.2 核心概念 388 25.2.1 操作资源 388 25.2.2 控制器 389 25.2.3 辅助概念 390 25.3 资源抽象对象 390 25.3.1 容器组 391 25.3.2 服务 392 25.3.3 存储卷 393 25.3.4 控制器 394 25.3.5 其他抽象对象 396 25.4 快速体验 398 25.4.1 下载minikube和 kubectl 398 25.4.2 启动集群 398 25.4.3 查看Kubernetes服务 399 25.4.4 使用部署控制器管理 服务 399 25.5 重要组件 401 25.6 使用kubectl 406 25.6.1 获取kubectl 406 25.6.2 命令格式 407 25.6.3 全局参数 408 25.6.4 通用子命令 409 25.6.5 部署命令 414 25.6.6 集群管理命令 415 25.6.7 诊断命令 417 25.6.8 高级命令 420 25.6.9 配置命令 421 25.6.10 其他命令 422 25.7 网络设计 423 25.7.1 场景分析 423 25.7.2 直接路由 424 25.7.3 Overlay网络 424 25.8 本章小结 425 第26章 其他相关项目 426 26.1 持续集成 426 26.2 容器管理 432 26.3 编程开发 435 26.3.1 安装docker-py 435 26.3.2 使用示例 435 26.4 网络支持 436 26.4.1 pipework 436 26.4.2 Flannel项目 436 26.4.3 Weave Net项目 437 26.4.4 Calico 项目 438 26.5 日志处理 439 26.5.1 Fluentd 439 26.5.2 logspout 439 26.6 服务代理 440 26.6.1 Traefik 440 26.6.2 nginx-proxy 442 26.7 标准与规范 443 26.7.1 runC标准 443 26.7.2 开放容器规范 443 26.7.3 云应用十二要素 444 26.8 其他项目 445 26.8.1 OpenStack支持 445 26.8.2 dockerize 446 26.8.3 Unikernel 448 26.9 本章小结 448 附录 附录A 常见问题总结 450 A.1 镜像相关 450 A.2 容器相关 452 A.3 仓库相关 453 A.4 配置相关 453 A.5 Docker与虚拟化 455 A.6 其他 455 附录B 热门镜像介绍 457 B.1 MongoDB 457 B.2 MySQL 460 B.3 Nginx 463 B.4 Node.js 466 B.5 Redis 468 B.6 Ubuntu 471 B.7 WordPress 472 附录C Docker命令查询 476 C.1 基本语法 476 C.2 客户端命令 476 C.3 服务端命令选项 479 C.4 一张图总结Docker命令 482 附录D 资源链接 483
|
| 內容試閱:
|
前 言 Docker及其代表的容器化计算技术一直在不断创新和发展。本书的首版问世于Docker 技术诞生之初。自那时起,后续版本有幸陪伴着容器技术的逐步成熟,见证了容器技术极大地降低了人们使用信息技术的门槛,显著推动了信息行业的演进。 过去十年无疑是信息科技发展的黄金时期。大数据和物联网技术的进步,使人们能够以前所未有的方式理解和影响现实世界。区块链技术的出现,提供了一种全新的信任机制,为分布式金融网络铺就了道路。人工智能技术,尤其是大模型的普及,为人们的生活带来了难以想象的便利。在所有这些重大的变革中,容器技术都扮演着重要角色,为这些变革提供了坚实的计算平台支持。 为了让读者快速掌握最新的容器技术,本书重点围绕最新的容器技术,补充讲解了新特性(包括高级构建、新的编排工具、增强的安全机制和性能优化等),同时摒弃了不再活跃的工具和项目(如 Docker Machine和Mesos 项目)。 全书分为四部分:第一部分简要介绍 Docker 的基础知识和常用命令;第二部分详述在各种典型场景中如何运用容器技术,包括操作系统、Web 服务、数据库、分布式处理和大数据、编程开发以及容器云等;第三部分深入讲解高级容器技巧,包括实现原理、私有仓库、安全防护、高级网络功能和网络插件;第四部分展示与容器相关的开源项目,包括Etcd、Compose、Swarm、Kubernetes等。这些项目让使用容器技术变得更加有效率,使容器平台更加稳定和智能,共同构建了一个繁荣的容器计算生态。 在此由衷感谢所有支持本书的读者和同人。众多宝贵的建议和反馈,让本书得以不断完善和提高。多年的畅销记录,是对本书的最大肯定和鼓励。 愿信息技术的进步,使世界变得更加美好!
|
|