展开全部

主编推荐语

Docker技术入门与实践指南教程,入门Docker容器技术。

内容简介

本书针对容器技术与应用的实际需求,讲解主流容器平台Docker的应用和运维的技术方法,内容包括Docker基础与安装、镜像管理、容器管理、Docker网络配置、Docker存储管理、Docker应用程序开发、镜像自动化构建、持续集成和自动化部署、多容器编排、多主机管理和Docker容器集群平台,以及生产环境中的Docker运维。

目录

  • 版权信息
  • 内容提要
  • 前言
  • 第1章 Docker基础
  • 1.1 Docker的概念
  • 1.1.1 什么是Docker
  • 1.1.2 镜像与容器
  • 1.1.3 容器与虚拟机
  • 1.1.4 Docker引擎
  • 1.1.5 Docker生态系统
  • 1.2 Docker的应用
  • 1.2.1 实现应用程序快速、一致的交付
  • 1.2.2 响应式部署和应用程序
  • 1.2.3 运行更多的工作负载
  • 1.2.4 部署微服务应用
  • 1.3 Docker架构
  • 1.3.1 Docker客户端
  • 1.3.2 Docker守护进程
  • 1.3.3 Docker注册中心
  • 1.3.4 Docker对象
  • 1.4 Docker底层技术
  • 1.4.1 名称空间
  • 1.4.2 控制组
  • 1.4.3 联合文件系统
  • 1.4.4 容器格式
  • 1.5 安装Docker
  • 1.5.1 Docker的版本
  • 1.5.2 Docker所支持的平台
  • 1.5.3 安装Docker的准备工作
  • 1.5.4 使用软件仓库安装Docker CE
  • 1.5.5 通过便捷脚本安装Docker CE
  • 1.5.6 卸载Docker
  • 1.5.7 安装Docker之后的配置
  • 1.6 docker命令行的使用
  • 1.6.1 docker命令行接口类型
  • 1.6.2 docker命令列表
  • 1.6.3 docker命令的基本用法
  • 1.6.4 docker命令示例
  • 1.7 Docker API
  • 1.7.1 Docker API类型
  • 1.7.2 使用Docker API
  • 1.8 Docker配置文件格式
  • 1.8.1 JSON格式
  • 1.8.2 YAML格式
  • 1.9 习题
  • 第2章 Docker镜像
  • 2.1 Docker镜像基础
  • 2.1.1 进一步理解镜像的概念
  • 2.1.2 镜像的基本信息与标识
  • 2.1.3 镜像描述文件Dockerfile
  • 2.1.4 父镜像与基础镜像
  • 2.1.5 镜像的分层结构
  • 2.1.6 镜像操作命令
  • 2.2 Docker镜像的基本操作
  • 2.2.1 拉取镜像
  • 2.2.2 显示镜像列表
  • 2.2.3 设置镜像标签
  • 2.2.4 查看镜像详细信息
  • 2.2.5 查看镜像的构建历史以验证镜像分层
  • 2.2.6 查找镜像
  • 2.2.7 删除本地镜像
  • 2.2.8 Docker镜像的导入和导出
  • 2.3 Docker注册中心
  • 2.3.1 Docker注册中心与仓库
  • 2.3.2 Docker Hub
  • 2.3.3 阿里云的容器镜像服务
  • 2.3.4 私有Docker注册中心
  • 2.4 习题
  • 第3章 Docker容器
  • 3.1 Docker容器基础
  • 3.1.1 进一步理解容器的概念
  • 3.1.2 容器的基本信息与标识
  • 3.1.3 可写的容器层
  • 3.1.4 磁盘上的容器大小
  • 3.1.5 “写时拷贝”策略
  • 3.1.6 容器操作命令
  • 3.2 Docker容器的基本操作
  • 3.2.1 创建和运行容器
  • 3.2.2 启动和停止容器
  • 3.2.3 查看容器信息
  • 3.2.4 进入容器执行操作
  • 3.2.5 删除容器
  • 3.2.6 导出与导入容器
  • 3.2.7 基于容器创建镜像
  • 3.3 限制容器运行的资源
  • 3.3.1 限制容器的内存使用
  • 3.3.2 限制容器的CPU使用
  • 3.3.3 块IO带宽限制
  • 3.3.4 资源限制的实现机制——控制组
  • 3.3.5 动态更改容器的配置
  • 3.4 容器监控
  • 3.4.1 Docker容器监控命令
  • 3.4.2 使用cAdvisor监控容器
  • 3.5 容器的日志管理
  • 3.5.1 使用docker logs命令查看容器日志
  • 3.5.2 配置日志驱动重定向容器的日志记录
  • 3.6 习题
  • 第4章 Docker网络
  • 4.1 Docker网络基础
  • 4.1.1 Docker容器网络模型
  • 4.1.2 Linux网络基础
  • 4.1.3 单主机与多主机的Docker网络
  • 4.1.4 docker run命令的网络配置用法
  • 4.1.5 docker network命令的网络配置用法
  • 4.2 配置容器的网络连接
  • 4.2.1 使用默认桥接网络
  • 4.2.2 使用主机网络
  • 4.2.3 使用none网络模式
  • 4.2.4 使用container网络模式
  • 4.2.5 用户自定义桥接网络
  • 4.3 容器与外部的网络通信
  • 4.3.1 容器访问外部网络
  • 4.3.2 从外部网络访问容器
  • 4.4 容器之间的网络通信
  • 4.4.1 容器之间的网络通信的解决方案
  • 4.4.2 以传统方式建立容器连接
  • 4.5 习题
  • 第5章 Docker存储
  • 5.1 Docker存储驱动及其选择
  • 5.1.1 概述
  • 5.1.2 Docker版本所支持的存储驱动
  • 5.1.3 Docker存储驱动所支持的底层文件系统
  • 5.1.4 选择存储驱动需考虑的其他事项
  • 5.1.5 检查当前的存储驱动
  • 5.2 使用overlay2存储驱动
  • 5.2.1 使用overlay2存储驱动的要求
  • 5.2.2 配置Docker使用overlay2存储驱动
  • 5.2.3 overlay2存储驱动的工作机制
  • 5.2.4 容器使用overlay2存储驱动的读写机制
  • 5.2.5 OverlayFS与Docker性能
  • 5.3 迁移Docker根目录
  • 5.4 Docker存储的挂载类型
  • 5.4.1 Docker卷与存储驱动
  • 5.4.2 选择合适的挂载类型
  • 5.4.3 docker run命令的存储配置基本用法
  • 5.5 使用Docker卷
  • 5.5.1 卷的优势
  • 5.5.2 选择-v或--mount选项
  • 5.5.3 创建和管理卷
  • 5.5.4 启动带有卷的容器
  • 5.5.5 使用容器填充卷
  • 5.5.6 使用只读卷
  • 5.5.7 删除卷
  • 5.6 使用绑定挂载
  • 5.6.1 绑定挂载的功能限制
  • 5.6.2 选择-v或--mount选项
  • 5.6.3 容器使用绑定挂载
  • 5.6.4 使用只读的绑定挂载
  • 5.6.5 配置SELinux标签
  • 5.7 使用tmpfs挂载
  • 5.7.1 tmpfs挂载的特点
  • 5.7.2 选择--tmpfs或--mount选项
  • 5.7.3 在容器中使用tmpfs挂载
  • 5.7.4 指定tmpfs参数
  • 5.8 使用卷容器
  • 5.8.1 通过卷容器实现容器之间的数据共享
  • 5.8.2 通过卷容器来备份、恢复和迁移数据卷
  • 5.9 容器的数据共享
  • 5.9.1 容器与主机共享数据
  • 5.9.2 容器之间共享数据
  • 5.10 习题
  • 第6章 开发基于Docker的应用程序
  • 6.1 开发Docker镜像
  • 6.1.1 进一步了解Dockerfile
  • 6.1.2 通过Dockerfile构建镜像的基本方法
  • 6.1.3 Dockerfile常用指令
  • 6.1.4 Dockerfile示例
  • 6.1.5 基于Dockerfile构建镜像
  • 6.1.6 创建基础镜像
  • 6.1.7 使用多阶段构建
  • 6.1.8 编写Dockerfile的通用准则和建议
  • 6.1.9 管理镜像
  • 6.2 Docker的应用程序开发准则
  • 6.2.1 尽可能缩减Docker镜像的大小
  • 6.2.2 持久化应用程序数据
  • 6.2.3 尽可能使用Swarm集群服务
  • 6.2.4 测试和部署时使用持续集成和持续部署
  • 6.2.5 了解开发环境和生产环境的区别
  • 6.3 将应用程序Docker化
  • 6.3.1 Docker化应用程序的基本流程
  • 6.3.2 将Node.js应用程序Docker化
  • 6.3.3 开发Node.js应用程序
  • 6.3.4 创建应用程序的镜像
  • 6.3.5 基于应用程序镜像运行容器
  • 6.4 习题
  • 第7章 自动化构建与持续集成
  • 7.1 概述
  • 7.1.1 镜像的自动化构建
  • 7.1.2 持续集成
  • 7.2 Docker Hub结合GitHub实现自动化构建
  • 7.2.1 在GitHub上创建代码仓库
  • 7.2.2 将Docker Hub连接到GitHub账户
  • 7.2.3 在Docker Hub上创建镜像仓库
  • 7.2.4 配置自动化构建选项和规则
  • 7.2.5 创建自动化构建项目
  • 7.2.6 基于代码仓库标签的自动化构建
  • 7.2.7 通过构建触发器触发自动化构建
  • 7.2.8 使用Webhook
  • 7.3 通过阿里云镜像服务实现自动化构建
  • 7.3.1 设置代码源
  • 7.3.2 创建代码仓库
  • 7.3.3 开始构建
  • 7.4 基于Jenkins和Docker组建持续集成环境
  • 7.4.1 准备工作
  • 7.4.2 部署GitLab服务器
  • 7.4.3 部署Docker注册服务器
  • 7.4.4 部署并配置Jenkins服务器
  • 7.4.5 新建Jenkins项目并进行构建
  • 7.4.6 通过GitLab自动触发Jenkins构建项目
  • 7.4.7 利用Jenkins的Docker插件来构建和推送镜像
  • 7.5 实现应用程序的持续集成和自动化部署
  • 7.5.1 准备工作
  • 7.5.2 部署持续集成环境
  • 7.5.3 准备源代码并将其提交到代码仓库
  • 7.5.4 为Tale应用程序构建镜像并推送到Docker注册服务器
  • 7.5.5 新建Maven项目进行构建并实现自动化部署
  • 7.5.6 实现项目的自动化构建
  • 7.6 习题
  • 第8章 Docker容器编排
  • 8.1 Docker容器编排基础
  • 8.1.1 Docker Compose的架构
  • 8.1.2 使用Docker Compose的基本步骤
  • 8.1.3 Docker Compose的特性
  • 8.1.4 Docker Compose的应用场合
  • 8.1.5 Docker Compose安装
  • 8.1.6 Docker Compose入门示例
  • 8.2 Compose文件
  • 8.2.1 Compose文件格式的不同版本
  • 8.2.2 Compose文件结构
  • 8.2.3 服务定义
  • 8.2.4 卷存储定义
  • 8.2.5 网络定义
  • 8.3 Compose命令行
  • 8.3.1 Compose命令行格式
  • 8.3.2 Compose主要命令简介
  • 8.4 Compose的环境变量
  • 8.4.1 Compose使用环境变量的方式
  • 8.4.2 不同位置定义的环境变量的优先级
  • 8.5 在Compose中设置网络
  • 8.5.1 默认网络的配置
  • 8.5.2 更新容器
  • 8.5.3 使用links选项
  • 8.5.4 指定自定义网络
  • 8.5.5 使用现有网络
  • 8.6 容器编排示例
  • 8.6.1 示例一:实现Web负载均衡
  • 8.6.2 示例二:在Linux上部署ASP.NET与SQL Server
  • 8.7 共享Compose通用配置
  • 8.7.1 使用多个Compose文件
  • 8.7.2 Compose文件追加和覆盖配置规则
  • 8.8 在生产环境中使用Compose
  • 8.8.1 针对生产环境修改Compose文件
  • 8.8.2 部署应用程序更改
  • 8.8.3 在单主机上运行Compose
  • 8.9 习题
  • 第9章 多主机部署与管理
  • 9.1 通过Docker Machine部署和管理多主机
  • 9.1.1 Docker Machine概述
  • 9.1.2 Docker Machine安装
  • 9.1.3 Docker Machine驱动
  • 9.1.4 通过Docker Machine远程安装和部署Docker
  • 9.1.5 通过Docker Machine管理Docker主机
  • 9.2 跨主机容器网络
  • 9.2.1 容器的跨主机通信方式
  • 9.2.2 使用macvlan网络
  • 9.2.3 使用overlay网络
  • 9.3 跨主机监控
  • 9.3.1 使用Weave Scope进行故障诊断与监控
  • 9.3.2 Prometheus基础
  • 9.3.3 部署Prometheus系统监控Docker主机和容器
  • 9.4 习题
  • 第10章 Docker Swarm集群
  • 10.1 Docker Swarm基础
  • 10.1.1 Docker Swarm模式
  • 10.1.2 Docker Swarm主要概念
  • 10.1.3 Swarm节点工作机制
  • 10.1.4 Swarm服务工作机制
  • 10.1.5 使用PKI管理Swarm安全性
  • 10.1.6 Swarm任务状态
  • 10.2 Docker Swarm基本操作
  • 10.2.1 设置运行环境
  • 10.2.2 创建Swarm集群
  • 10.2.3 将节点加入Swarm集群
  • 10.2.4 将服务部署到Swarm集群
  • 10.2.5 增加和缩减服务
  • 10.2.6 故障迁移与重新平衡
  • 10.2.7 删除Swarm服务
  • 10.2.8 对服务进行滚动更新
  • 10.2.9 管理节点
  • 10.2.10 发布服务端口
  • 10.3 管理Swarm服务网络
  • 10.3.1 配置overlay网络
  • 10.3.2 创建和配置连接overlay网络的Swarm服务
  • 10.3.3 服务发现与内部容器之间的通信
  • 10.3.4 在overlay网络上使用独立容器
  • 10.4 通过堆栈在Swarm集群中部署分布式应用
  • 10.4.1 Docker堆栈概述
  • 10.4.2 示例一:Swarm堆栈部署入门
  • 10.4.3 示例二:Swarm集群多节点的堆栈部署
  • 10.5 管理敏感数据
  • 10.5.1 Docker机密数据的应用
  • 10.5.2 Docker如何管理机密数据
  • 10.5.3 Docker机密数据管理命令
  • 10.5.4 示例一:Docker机密数据操作入门
  • 10.5.5 示例二:配置Nginx服务使用机密数据
  • 10.5.6 在Compose文件中使用Docker机密数据
  • 10.5.7 将Docker机密数据置入镜像中
  • 10.6 存储服务配置数据
  • 10.6.1 Docker配置数据概述
  • 10.6.2 示例一:Docker配置数据操作入门
  • 10.6.3 示例二:配置Nginx服务使用配置数据
  • 10.6.4 替换服务的配置数据
  • 10.7 习题
  • 第11章 生产环境中的Docker运维
  • 11.1 配置和管理Docker守护进程
  • 11.1.1 配置并运行Docker守护进程
  • 11.1.2 排查Docker守护进程故障
  • 11.1.3 使用systemd控制Docker
  • 11.2 配置Docker对象
  • 11.2.1 配置对象使用自定义元数据
  • 11.2.2 删除不用的对象
  • 11.2.3 格式化命令和日志的输出
  • 11.3 Docker安全
  • 11.3.1 Docker安全机制
  • 11.3.2 保护Docker守护进程套接字
  • 11.3.3 其他Docker安全措施
  • 11.4 使用插件扩展Docker
  • 11.4.1 Docker插件概述
  • 11.4.2 Docker插件安装和使用示例
  • 11.4.3 Docker插件开发示例
  • 11.5 离线部署和使用Docker
  • 11.5.1 离线安装Docker
  • 11.5.2 在离线环境中导入镜像
  • 11.5.3 离线建立私有Docker注册中心
  • 11.6 习题
展开全部

评分及书评

尚无评分
目前还没人评分

出版方

人民邮电出版社

人民邮电出版社是工业和信息化部主管的大型专业出版社,成立于1953年10月1日。人民邮电出版社坚持“立足信息产业、面向现代社会、传播科学知识、服务科教兴国”,致力于通信、计算机、电子技术、教材、少儿、经管、摄影、集邮、旅游、心理学等领域的专业图书出版。