Docker 容器与容器云(第2版)

Docker 容器与容器云(第2版) pdf epub mobi txt 电子书 下载 2025

浙江大学SEL实验室 著
图书标签:
  • Docker
  • 容器化
  • 容器云
  • Kubernetes
  • 微服务
  • DevOps
  • 云原生
  • Linux
  • 虚拟化
  • 应用部署
想要找书就要到 图书大百科
立刻按 ctrl+D收藏本页
你会得到大惊喜!!
出版社: 人民邮电出版社
ISBN:9787115435040
版次:2
商品编码:12052716
包装:平装
丛书名: 图灵原创
开本:16开
出版时间:2016-10-01
用纸:胶版纸
页数:458
正文语种:中文

具体描述

编辑推荐

1.本书以源码解读为基础,以构建Docker云平台为目标,通过回答实际项目中的问题为线索,全面解析Docker原理。这是国内首部在解读Docker原理的同时深入实践Docker三件套和云平台的图书,也是国内首部深入解读Kubernetes的图书。
2.基于Docker新版本,新增runc和libnetwork两个全新而又十分重要的概念。
3.基于Kubernetes 1.2新版本,全面解读volume plugin、secret、auto scaling等全新特性。

内容简介

本书根据Docker 1.10版和Kubernetes 1.2版对第1版进行了全面更新,从实践者的角度出发,以Docker和Kubernetes为重点,沿着“基本用法介绍”到“核心原理解读”到“高级实践技巧”的思路,一本书讲透当前主流的容器和容器云技术,有助于读者在实际场景中利用Docker容器和容器云解决问题并启发新的思考。全书包括两部分,首部分深入解读Docker容器技术,包括Docker架构与设计、核心源码解读和高级实践技巧;第二部分归纳和比较了三类基于Docker的主流容器云项目,包括专注Docker容器编排与部署的容器云、专注应用支撑的容器云以及一切皆容器的Kubernetes,进而详细解读了Kubernetes核心源码的设计与实现,介绍了几种典型场景下的Kubernetes实践。
本书适用于有一定Docker基础的开发者、架构师、IT专业学生以及探索基于Docker构建云计算平台的技术人员,也非常适合作为高校教材或培训资料。

作者简介

浙江大学软件工程实验室(Software Engineering Lab,SEL)云计算团队组建于2011年,组织博士和硕士研究生搭建、分析和钻研开源的云计算技术,包括Docker、Kubernetes、Cloud Foundry、OpenStack、CloudStack、Eucalyptus、Convirt、OpenShift等,积极为开源社区贡献代码,管理和参与线上线下讨论社区,参加国内外云计算技术峰会并发言。以开源社区为技术交流研发平台,浙江大学SEL实验室在4年多的时间里成长为一个充满热情、富有能力的云计算研发团队,也在国内外开源云计算社区,尤其是在Docker、Kubernetes和Cloud Foundry社区得到了广泛认可。

目录

第一部分 Docker深入解读
第1章 从容器到容器云  2
1.1 云计算平台  2
1.2 容器,新的革命  3
1.3 进化:从容器到容器云  7
第2章 Docker 基础  8
2.1 Docker的安装  8
2.2 Docker操作参数解读  9
2.3 搭建你的第一个Docker应用栈  16
2.3.1 Docker集群部署  16
2.3.2 第一个Hello World  17
2.3.3 开发、测试和发布一体化  27
第3章 Docker核心原理解读  28
3.1 Docker背后的内核知识  28
3.1.1 namespace资源隔离  28
3.1.2 cgroups资源限制  45
3.2 Docker架构概览  53
3.2.1 Docker daemon  54
3.2.2 Docker client  54
3.2.3 镜像管理  54
3.2.4 execdriver、volumedriver、graphdriver  55
3.2.5 network  55
3.3 client和daemon  56
3.3.1 client模式  56
3.3.2 daemon模式  58
3.3.3 从client到daemon  64
3.4 libcontainer  67
3.4.1 libcontainer的工作方式  69
3.4.2 libcontainer实现原理  70
3.4.3 使用runC与libcontainer进行交互  75
3.5 Docker镜像管理  77
3.5.1 什么是Docker镜像  77
3.5.2 Docker镜像关键概念  80
3.5.3 Docker镜像构建操作  81
3.5.4 Docker镜像的分发方法  84
3.6 Docker存储管理  87
3.6.1 Docker镜像元数据管理  87
3.6.2 Docker存储驱动  89
3.7 Docker数据卷  99
3.7.1 数据卷的使用方式  100
3.7.2 数据卷原理解读  105
3.8 Docker网络管理  108
3.8.1 Docker网络基础  108
3.8.2 Docker daemon网络配置原理  116
3.8.3 libcontainer网络配置原理  119
3.8.4 传统的link原理解析  125
3.8.5 新的link介绍  127
3.9 Docker与容器安全  129
3.9.1 Docker的安全机制  129
3.9.2 Docker安全问题  135
3.9.3 Docker安全的解决方案  139
第4章 Docker 高级实践技巧  151
4.1 容器化思维  151
4.1.1 SSH服务器的替代方案  151
4.1.2 Docker内应用日志管理方案  152
4.1.3 容器化思维及更多  153
4.2 Docker高级网络实践  153
4.2.1 玩转Linux networknamespace  154
4.2.2 pipework原理解析  159
4.2.3 pipework跨主机通信  165
4.2.4 OVS划分VLAN  170
4.2.5 OVS隧道模式  174
4.3 Dockerfile最佳实践  187
4.3.1 Dockerfile的使用  187
4.3.2 Dockerfile实践心得  191
4.4 Docker容器的监控手段  193
4.4.1 Docker容器监控维度  194
4.4.2 容器监控命令  195
4.4.3 常用的容器监控工具  197
4.5 容器化应用构建的基础:高可用配置中心  201
4.5.1 etcd经典应用场景  201
4.5.2 etcd实现原理  206
第二部分 Docker云平台解读
第5章 构建自己的容器云  222
5.1 再谈云平台的层次架构  222
5.2 从小工到专家  225
第6章 专注编排与部署:三剑客与Fleet  230
6.1 编排小神器Fig/Compose  230
6.1.1 再谈容器编排与部署  230
6.1.2 Compose原理:一探究竟  233
6.2 跨平台宿主环境管理工具Machine  237
6.2.1 Machine与虚拟机软件  237
6.2.2 Machine与IaaS平台  238
6.2.3 Machine小结  239
6.3 集群抽象工具Swarm  240
6.3.1 Swarm简介  240
6.3.2 试用Swarm  241
6.3.3 Swarm集群的多种创建方式  243
6.3.4 Swarm对请求的处理  245
6.3.5 Swarm集群的调度策略  245
6.3.6 Swarm集群高可用(HA)  246
6.3.7 Swarm与Machine  247
6.3.8 Swarm小结  248
6.4 编排之秀Fleet  248
6.4.1 旧问题新角度:Docker distro  249
6.4.2 Fleet的原理剖析  252
第7章 专注应用支撑和运行时:Flynn和Deis  258
7.1 Flynn,一个小而美的两层架构  258
7.1.1 第0层:容器云的基础设施  259
7.1.2 第1层:容器云的功能框架  259
7.1.3 Flynn体系架构与实现原理  260
7.2 谈谈Deis与Flynn  270
7.2.1 应用发布上的比较  271
7.2.2 关于Deis的一些思考  273
第8章 一切皆容器:Kubernetes  274
8.1 Kubernetes是个什么样的项目  274
8.2 Kubernetes的设计解读  275
8.2.1 一个典型案例:Guestbook  275
8.2.2 pod设计解读  277
8.2.3 replication controller设计解读  288
8.2.4 service的设计解读  294
8.2.5 新一代副本控制器replica set  306
8.2.6 Deployment  307
8.2.7 DaemonSet  312
8.2.8 ConfigMap  312
8.2.9 Job  317
8.2.10 Horizontal Pod Autoscaler  318
8.3 Kubernetes核心组件解读  320
8.3.1 Kubernetes的整体架构  320
8.3.2 APIServer  321
8.3.3 scheduler  328
8.3.4 controller manager  338
8.3.5 kubelet  346
8.3.6 kube-proxy  352
8.3.7 核心组件协作流程  362
8.4 Kubernetes存储核心原理  366
8.4.1 volume设计解读  366
8.4.2 volume实现原理分析  367
8.4.3 volume使用案例  368
8.4.4 persistent volume  371
8.5 Kubernetes网络核心原理  372
8.5.1 单pod单IP模型  373
8.5.2 pod和网络容器  374
8.5.3 实现Kubernetes的网络模型  377
8.6 Kubernetes多租户管理与资源控制  381
8.6.1 namespace设计解读  381
8.6.2 Kubernetes用户认证机制  385
8.6.3 Kubernetes用户授权机制  387
8.6.4 Kubernetes多维资源管理机制admission control  390
8.7 Kubernetes高级实践  402
8.7.1 应用健康检查  402
8.7.2 高可用性  405
8.7.3 日志  408
8.7.4 集成DNS  410
8.7.5 容器上下文环境  412
8.8 Kubernetes未来动向  414
8.8.1 Ubernetes  414
8.8.2 petSet  415
8.8.3 performance  417
8.8.4 rescheduler  417
8.8.5 OCI标准  419
8.9 不要停止思考  419
第三部分 附录
附录A Docker的安装  424
附录B 阅读Docker源代码的神兵
利器  432
附录C 快速熟悉开源项目  441
附录D cgroups的测试与使用  444
附录E cgroups子系统配置参数介绍  448
附录F Kubernetes的安装  453
后记  457
《Docker容器与容器云(第2版)》是一本深入探讨容器化技术及其在现代化应用部署和管理中扮演角色的权威指南。本书旨在为开发人员、运维工程师以及系统架构师提供一个全面而实用的框架,帮助他们理解并掌握Docker的核心概念、高级特性,以及如何构建和管理基于容器的云平台。 第一部分:Docker基础与核心概念 在本书的第一部分,我们将从Docker的最基本概念入手,为你揭开容器化技术的神秘面纱。 容器化概览与Docker的崛起:我们将首先介绍什么是容器化,它与虚拟机技术有何异同,以及容器化技术为何能够迅速风靡全球,成为现代软件开发和部署的关键技术。你将了解到容器化带来的效率提升、资源优化和环境一致性等核心优势。 Docker安装与快速入门:本书会详细指导你如何在不同的操作系统(Linux, macOS, Windows)上安装Docker。我们会通过一系列简单易懂的实践操作,让你快速体验第一个Docker容器的创建、运行和停止,建立起对Docker基本命令的直观认识。 Docker镜像:构建与管理:镜像(Image)是Docker容器的蓝图。我们将深入讲解Docker镜像的构成原理,包括分层文件系统(Union File System)的工作方式。你将学习如何使用Dockerfile编写定制化的镜像,掌握RUN, COPY, ADD, EXPOSE, CMD, ENTRYPOINT等关键指令的用法,理解其对镜像构建效率和安全性的影响。本书还会介绍Docker Hub等公共镜像仓库的使用,以及如何构建私有镜像仓库,并讲解镜像的最佳实践,例如如何减小镜像体积、提高安全性以及实现可重复构建。 Docker容器:生命周期管理:容器(Container)是镜像的运行实例。你将学会如何创建、启动、停止、暂停和删除容器,以及如何连接到容器的Shell环境进行交互式操作。我们会详细介绍容器的端口映射、数据卷(Volume)和绑定挂载(Bind Mount)等机制,让你理解如何实现容器之间以及容器与宿主机之间的数据持久化和共享,这对于构建有状态应用至关重要。 Docker网络:容器间的通信:理解Docker网络是实现复杂应用部署的关键。我们将从Docker的默认网络模式(bridge, host, none)开始,逐一剖析它们的原理和适用场景。本书还会深入讲解如何创建自定义网络,实现更灵活的容器间通信,以及如何解决跨主机容器通信的问题,为构建微服务架构打下坚实基础。 Docker存储:数据持久化策略:数据持久化是Docker容器化部署中不可回避的挑战。我们将详细介绍Docker存储驱动的原理,包括OverlayFS, AUFS等,并重点讲解Docker Volume(数据卷)和Bind Mount(绑定挂载)的使用方法和优劣势。你将学会如何选择最适合你应用场景的存储方案,确保数据的安全和可靠。 第二部分:Docker高级特性与实践 在掌握了Docker的基础知识后,本书将进一步深入Docker的高级特性,以及在实际项目中的应用技巧。 Docker Compose:声明式多容器管理:对于需要部署多个相互关联的容器组成的复杂应用,Docker Compose是不可或缺的工具。你将学会使用YAML文件来声明式地定义和配置多容器应用,包括服务定义、网络配置、卷挂载以及依赖关系。本书将通过实际案例,指导你如何使用Docker Compose快速启动、停止和管理整个应用栈。 Docker Swarm:原生容器编排:Docker Swarm是Docker官方提供的容器编排工具,它能够将多个Docker主机连接成一个集群,并提供声明式的服务管理、滚动更新、服务发现和负载均衡等功能。你将学习如何初始化Docker Swarm集群,如何部署和扩展服务,以及如何利用Swarm的内置功能实现高可用性和弹性伸缩。 Docker安全:加固容器环境:安全性是任何IT基础设施的核心。本书将深入探讨Docker的安全方面,包括镜像安全扫描、容器运行时安全加固、敏感信息管理(Secrets)以及网络安全隔离等。你将了解如何最小化攻击面,防止镜像被恶意篡改,以及如何在生产环境中安全地运行Docker容器。 Docker Registry:私有镜像仓库管理:对于企业级应用,拥有一个私有的Docker Registry来存储和分发内部镜像至关重要。我们将介绍如何搭建和配置私有的Docker Registry,以及如何与其集成,实现镜像的安全管理和版本控制。 Docker生态系统工具:深入了解:除了Docker Swarm,容器编排领域还有许多强大的第三方工具,例如Kubernetes。本书虽然侧重于Docker原生工具,但也会简要介绍Kubernetes等主流容器编排平台,帮助你了解Docker生态系统的发展趋势,为后续深入学习做好铺垫。 第三部分:容器云平台构建与管理 在本书的第三部分,我们将视角从单个Docker主机扩展到构建和管理一个完整的容器化云平台。 容器云平台概念与架构:我们将阐述容器云平台的定义、核心组成部分(如容器运行时、容器编排、存储、网络、监控、日志等)以及常见的平台架构模式。你将理解容器云平台如何为上层应用提供弹性、可扩展、高可用的运行环境。 基于Docker构建私有云:本书将结合Docker Swarm等工具,指导你如何从零开始构建一个简化的私有容器云平台。我们将重点关注如何部署和管理Docker Swarm集群,实现跨主机的容器调度和资源管理。 容器云平台的核心组件详解:我们将深入探讨构建一个功能完善的容器云平台所需的关键组件。 容器编排(Orchestration):在Docker Swarm的基础上,我们将讨论更高级的编排概念,例如声明式配置、服务部署策略(滚动更新、蓝绿部署)、服务发现与负载均衡。 存储管理(Storage Management):针对容器云环境下的持久化存储需求,我们将探讨分布式存储方案、 CSI (Container Storage Interface) 的概念,以及如何为容器应用提供灵活、可靠的存储服务。 网络管理(Networking):我们将深入研究容器云环境下的网络模型,包括Overlay网络、CNI (Container Network Interface) 插件的工作原理,以及如何实现跨节点、跨Pod的高效通信和网络策略。 监控与日志(Monitoring & Logging):构建生产级别的容器云平台离不开完善的监控和日志系统。我们将介绍Prometheus, Grafana等主流监控工具,以及ELK Stack (Elasticsearch, Logstash, Kibana) 等日志管理方案,帮助你实现对容器应用的全面洞察。 CI/CD与DevOps实践:我们将探讨如何将Docker容器化技术融入持续集成(CI)和持续交付(CD)流程,如何结合DevOps理念,实现应用的快速迭代和高效部署。 容器云平台的运维与管理:本书还将涵盖容器云平台的日常运维和管理挑战,包括故障排查、性能优化、安全加固、版本升级以及成本管理等方面。你将学习到一些实用的运维技巧和最佳实践,确保容器云平台的稳定运行。 云原生应用开发与部署:最后,我们将引导你如何利用容器云平台来开发和部署云原生应用,包括微服务架构的设计原则、API网关的使用、服务治理以及如何充分发挥容器平台的弹性优势。 《Docker容器与容器云(第2版)》的目标是让你不仅能够熟练掌握Docker技术,更能构建和管理一个现代化的、高弹性的容器化云平台,从而加速软件交付,提升应用的可伸缩性和可靠性,为企业的数字化转型提供坚实的技术支撑。本书融合了大量的理论讲解和实践案例,力求让你在学习过程中理论与实践相结合,真正做到学以致用。

用户评价

评分

最近在研究如何构建自己的CI/CD流水线,这其中Docker的身影无处不在。在《Docker容器与容器云(第2版)》中,我找到了许多关于容器化构建和部署的宝贵信息。书中对于镜像最佳实践的讲解,比如如何构建精简高效的Dockerfile,如何利用多阶段构建来减小最终镜像的体积,对于我们优化构建速度和降低部署成本非常有帮助。 而且,它还涉及到了容器的安全性问题,虽然这部分内容可能不是最核心的,但对于生产环境的部署来说,却是至关重要的。书中对容器安全加固的一些基本建议,比如最小化镜像、不使用root用户运行容器等,都给我留下了深刻的印象。这让我意识到,在享受容器带来的便利的同时,也不能忽视安全这个关键环节。这本书的全面性,让我觉得它不仅仅是一本技术书籍,更像是一本指导实践的“百科全书”。

评分

最近刚入手了《Docker容器与容器云(第2版)》,说实话,之前对Docker一直停留在“听过”、“大概知道是什么”的层面,工作上偶尔也会接触到一些容器化的应用,但始终没有系统地深入学习。这次买这本书,主要是想把这块知识体系彻底梳理一遍,毕竟在当下这个微服务、云原生飞速发展的时代,容器技术几乎是绕不开的。 翻开书,首先映入眼帘的是清晰的目录结构,从Docker的基础概念、安装部署,到镜像的构建、管理,再到容器的运行、网络、存储,最后扩展到容器编排的Kubernetes和Docker Swarm,再到更广阔的容器云平台。这种循序渐进的编排方式,对于我这种从零开始的读者来说,无疑是极大的福音。第一部分关于Docker基础的讲解,语言通俗易懂,配合着大量的命令示例和架构图,很快就让我理清了Docker的核心概念,比如镜像、容器、仓库、Dockerfile等等。我特别喜欢它对“镜像分层”的解释,之前一直有点模糊,看完这部分内容,感觉豁然开朗。它不仅解释了原理,还教会了如何利用这个原理来优化镜像构建速度和大小,这对于实际开发中非常重要。

评分

我一直对云原生和DevOps的结合很感兴趣,这本书正好提供了一个很好的切入点。在阅读《Docker容器与容器云(第2版)》的过程中,我发现它不仅仅关注Docker本身,更将视野拓展到了容器云的生态系统。书中对Kubernetes和Docker Swarm的介绍,让我对容器编排有了更深入的理解。 特别是关于如何利用这些工具来实现应用的自动化部署、弹性伸缩和高可用性,这部分内容对我启发很大。书中提供的一些实际案例,比如如何构建一个能够应对高并发流量的微服务架构,让我看到了容器技术在实际生产环境中的巨大潜力。这本书的结构设计非常合理,从基础到进阶,再到生态应用,层层递进,让我能够系统地掌握容器技术的发展脉络和应用方向。对于任何想要在云原生时代提升自己技能的开发者或运维人员来说,这本书都是一本不容错过的宝藏。

评分

我一直对云原生技术很感兴趣,但总觉得概念比较宏大,落地起来总感觉差了点火候。这本书在后半部分对Kubernetes和Docker Swarm的介绍,恰恰弥补了我的这一认知鸿沟。《Docker容器与容器云(第2版)》并非只是简单地介绍这两个工具的API,而是深入剖析了它们的设计理念、核心组件以及工作原理。例如,对于Kubernetes,它详细阐述了Pod、Service、Deployment、StatefulSet等核心资源对象的概念和用法,并结合实际场景讲解了如何利用它们来部署、扩展和管理应用。我尤其赞赏书中关于“声明式配置”的讲解,这让我理解了为什么Kubernetes能够实现自动化管理。 而且,书中还不仅仅停留在理论层面,大量的实战案例和部署指南,让我能够亲手搭建一个简单的Kubernetes集群,并部署我的应用。这种“学以致用”的方式,极大地增强了我的学习信心。虽然Kubernetes的内容量很大,但我感觉这本书的处理非常得当,没有堆砌过多的技术细节,而是抓住核心,让读者能够快速掌握关键知识点,并具备进一步深入学习的能力。对于那些希望踏入云原生领域,但又不知从何下手的读者来说,这本书无疑是一本极具价值的入门和进阶指南。

评分

这本书的讲解方式,真的是让我印象深刻。它不是那种干巴巴的技术手册,而是更像一位经验丰富的老友,循循善诱地引导你一步步走进Docker的世界。对于Docker网络这块,之前我一直觉得很复杂,什么桥接、宿主机模式、覆盖网络……光听名字就头大。但《Docker容器与容器云(第2版)》用非常清晰的比喻和图示,把这些概念一一拆解开来,让我瞬间明白了它们各自的特点和适用场景。 更让我惊喜的是,它还讲解了如何通过Docker Compose来管理多容器应用,这对于我们这种需要部署复杂应用服务的团队来说,简直是神器!书中提供的Compose文件示例,简洁明了,很容易上手。我还尝试用它来部署了一个包含前端、后端和数据库的简单Web应用,整个过程非常顺畅,让我深刻体会到容器化部署的便捷性。这本书在实践层面的指导非常到位,让我不仅知其然,更知其所以然。

评分

实验室买的,还好不是二手的,上次6本有2.本旧的

评分

还可以吧,就是纸张不怎么好

评分

一次性在京东买了十几本书,质量很满意,信赖京东!

评分

好书啊好书,领导制定让买的,应该错不了。

评分

书不错,适合有些基础的人看,书是我们公司的人编的

评分

感觉讲的很细 就是需要时间去里面专研 加油啦

评分

专业用书,包装很好,送货及时,很满意。

评分

物流快速,正品保证,信赖京东

评分

兔兔推荐几本终于体会手速太快了聪明伶俐几乎提醒我哦打击告诉他我的成绩使徒行者

相关图书

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2025 book.teaonline.club All Rights Reserved. 图书大百科 版权所有