Docker容器技术与应用(第2版)(微课版)

采用“教、学、做一体化”的教学方法,8个项目讲解Docker容器技术
分享 推荐 1 收藏 27 阅读 1.3K
程宁 (作者) 978-7-115-66410-5

关于本书的内容有任何问题,请联系 郭雯

1.理论与实际应用紧密结合
本书以8个项目为主线,在讲述容器技术的基础上,对Docker编排工具、自动化部署、Kubernetes(容器编排引擎)均有介绍。本书实现了技术讲解与应用的统一,有助于“教、学、做一体化”教学的实施。
2.内容组织合理、有效
本书按照由浅入深的顺序引入相关技术与知识。每个项目均被划分为若干个任务,每个任务均详细介绍了任务要求和相关知识。

内容摘要

本书以任务为导向,较为全面地介绍容器技术的相关知识。全书共8 个项目,包括Docker 概述、Docker镜像管理和定制、Docker 容器管理、Docker 网络管理和数据卷管理、Docker 编排工具、Kubernetes 概述及基本操作、Kubernetes 网络管理和数据卷管理、自动化部署。本书各项目均包含项目实训和项目练习题,可帮助读者巩固所学的内容。
本书既可以作为本科及高职高专院校云计算技术应用和计算机相关专业的教材,又可以作为云计算爱好者的自学用书。

目录

目 录
项目1
Docker 概述.................................................................. 1
任务1.1 认识Docker 技术........................................................................................................ 1
【任务要求】..............................................................................................................................1
【相关知识】..............................................................................................................................2
1.1.1 Docker 的发展历程............................................................................................................................. 2
1.1.2 Docker 的概念与特点......................................................................................................................... 2
【任务实现】..............................................................................................................................3
任务1:调研Docker 与传统虚拟机的区别................................................................................................. 3
任务2:调研Docker 的基本功能................................................................................................................. 4
任务3:搭建RHEL 8.1 运行环境................................................................................................................. 5
【项目实训】安装RHEL 8.1 并编写Docker 技术的调研报告.......................................................15
任务1.2 熟悉Docker 的安装.................................................................................................. 15
【任务要求】............................................................................................................................15
【相关知识】............................................................................................................................15
1.2.1 Docker 架构........................................................................................................................................ 15
1.2.2 Docker 的核心组件........................................................................................................................... 16
1.2.3 Docker 的版本分类........................................................................................................................... 16
【任务实现】............................................................................................................................17
任务1:在RHEL 8.1 中在线安装Docker ................................................................................................. 17
任务2:在RHEL 8.1 中离线安装Docker ................................................................................................. 21
任务3:在Windows 10 中安装Docker...................................................................................................... 23
【项目实训】安装和使用Docker................................................................................................ 25
【项目练习题】.......................................................................................................................... 26
项目2
Docker 镜像管理和定制................................................. 28
任务2.1 查看和管理Docker 镜像............................................................................................ 28
【任务要求】............................................................................................................................28
【相关知识】............................................................................................................................29
【任务实现】............................................................................................................................29
任务:Docker 镜像常用操作命令............................................................................................................... 29
【项目实训】Docker 镜像常用操作命令的使用............................................................................ 33
任务2.2 创建和使用私有仓库.................................................................................................. 35
【任务要求】............................................................................................................................35
【相关知识】............................................................................................................................35
2.2.1 Docker 镜像仓库................................................................................................................................ 35
2.2.2 Docker 公有仓库................................................................................................................................ 36
2.2.3 Docker 私有仓库................................................................................................................................ 36
【任务实现】............................................................................................................................39
任务1:基于Registry 私有仓库部署与管理............................................................................................. 39
任务2:基于Harbor 私有仓库部署与管理............................................................................................... 41
【项目实训】Harbor 日常操作管理............................................................................................. 45
任务2.3 创建Docker 镜像...................................................................................................... 51
【任务要求】............................................................................................................................51
【相关知识】............................................................................................................................51
2.3.1 使用docker commit 命令创建镜像.................................................................................................. 51
2.3.2 利用Dockerfile 创建镜像................................................................................................................. 52
【任务实现】............................................................................................................................56
任务1:使用docker commit 命令构建镜像.............................................................................................. 56
任务2:利用Dockerfile 构建镜像.............................................................................................................. 57
【项目实训】构建Tomcat 镜像.................................................................................................58
【项目练习题】.......................................................................................................................... 61
项目3
Docker 容器管理.......................................................... 63
任务3.1 认识Docker 容器...................................................................................................... 63
【任务要求】............................................................................................................................63
【相关知识】............................................................................................................................64
3.1.1 Docker 容器的特点........................................................................................................................... 64
3.1.2 容器实现原理.................................................................................................................................... 64
3.1.3 Docker 镜像与容器的关系............................................................................................................... 64
【任务实现】............................................................................................................................65
任务:使用容器的操作命令........................................................................................................................ 65
【项目实训】创建和管理容器..................................................................................................... 71
任务3.2 Docker 容器资源控制................................................................................................ 73
【任务要求】............................................................................................................................73
【相关知识】............................................................................................................................73
3.2.1 CGroups 简介..................................................................................................................................... 73
3.2.2 CGroups 的功能和特点..................................................................................................................... 73
【任务实现】............................................................................................................................74
任务:Docker 资源控制命令的使用........................................................................................................... 74
【项目实训】使用CGroups 控制资源........................................................................................ 78
【项目练习题】.......................................................................................................................... 81
项目4
Docker 网络管理和数据卷管理......................................... 83
任务4.1 Docker 网络管理...................................................................................................... 83
【任务要求】............................................................................................................................83
【相关知识】............................................................................................................................84
4.1.1 Docker 网络架构................................................................................................................................ 84
4.1.2 Docker 网络的实现原理................................................................................................................... 85
4.1.3 Docker 网络模式................................................................................................................................ 85
【任务实现】............................................................................................................................90
任务1:自定义网桥,实现跨主机Docker 容器的互联.......................................................................... 90
任务2:定义Flannel 网络,实现跨主机Docker 容器的互联................................................................ 94
【项目实训】在Docker 环境下实现跨主机容器的互相通信.........................................................100
任务4.2 Docker 数据卷管理................................................................................................. 102
【任务要求】..........................................................................................................................102
【相关知识】..........................................................................................................................103
4.2.1 认识Docker 数据卷........................................................................................................................ 103
4.2.2 数据卷容器....................................................................................................................................... 103
【任务实现】..........................................................................................................................103
任务:Docker 数据卷常用操作................................................................................................................. 103
【项目实训】Docker 数据卷常用命令的使用............................................................................. 107
【项目练习题】........................................................................................................................ 109
项目5
Docker 编排工具.........................................................111
任务5.1 Compose 编排工具的使用...................................................................................... 111
【任务要求】..........................................................................................................................111
【相关知识】..........................................................................................................................112
5.1.1 Compose 工具.................................................................................................................................. 112
5.1.2 Compose 的常用命令...................................................................................................................... 112
5.1.3 docker-compose.yml 文件................................................................................................................ 115
【任务实现】..........................................................................................................................118
任务1:Compose 工具的安装与卸载....................................................................................................... 118
任务2:使用Compose 工具部署nginx 服务.......................................................................................... 120
【项目实训】搭建WordPress 博客系统................................................................................... 121
任务5.2 Swarm 编排工具的使用........................................................................................... 124
【任务要求】..........................................................................................................................124
【相关知识】..........................................................................................................................124
5.2.1 认识Docker Swarm......................................................................................................................... 124
5.2.2 Swarm 架构...................................................................................................................................... 124
5.2.3 Swarm 相关概念.............................................................................................................................. 125
5.2.4 Swarm 常用命令.............................................................................................................................. 126
【任务实现】.......................................................................................................................... 127
任务:Swarm 集群的创建与应用............................................................................................................. 127
【项目实训】使用Swarm 部署Tomcat 集群............................................................................ 133
【项目练习题】........................................................................................................................ 135
项目6
Kubernetes 概述及基本操作......................................... 138
任务6.1 Kubernetes 概述.................................................................................................... 138
【任务要求】..........................................................................................................................138
【相关知识】..........................................................................................................................139
6.1.1 Kubernetes 简介............................................................................................................................... 139
6.1.2 Kubernetes 核心概念....................................................................................................................... 139
6.1.3 Kubernetes 架构及操作流程........................................................................................................... 141
【任务实现】..........................................................................................................................142
任务:部署Kubernetes 集群...................................................................................................................... 142
【项目实训】利用Rancher 部署Kubernetes 集群................................................................... 152
任务6.2 Kubernetes 的基本操作.......................................................................................... 158
【任务要求】..........................................................................................................................158
【相关知识】..........................................................................................................................158
6.2.1 kubectl 概述...................................................................................................................................... 158
6.2.2 Kubernetes 常用命令....................................................................................................................... 160
【任务实现】..........................................................................................................................162
任务:在Kubernetes 中部署nginx 服务.................................................................................................. 162
【项目实训】在Kubernetes 集群下部署Tomcat...................................................................... 165
【项目练习题】........................................................................................................................ 170
项目7
Kubernetes 网络管理和数据卷管理................................ 172
任务7.1 Kubernetes 网络管理............................................................................................. 172
【任务要求】.......................................................................................................................... 172
【相关知识】.......................................................................................................................... 172
7.1.1 Kubernetes 网络基础....................................................................................................................... 172
7.1.2 Kubernetes 网络通信机制............................................................................................................... 173
7.1.3 Kubernetes 网络插件....................................................................................................................... 174
【任务实现】..........................................................................................................................175
任务:在Kubernetes 下在线部署Calico 集群网络................................................................................. 175
【项目实训】在Kubernetes 下离线部署Calico 集群网络..........................................................178
任务7.2 Kubernetes 数据卷管理.......................................................................................... 179
【任务要求】..........................................................................................................................179
【相关知识】..........................................................................................................................179
7.2.1 简单存储........................................................................................................................................... 180
7.2.2 高级存储........................................................................................................................................... 180
7.2.3 配置存储........................................................................................................................................... 181
7.2.4 Kubernetes 数据卷的管理流程....................................................................................................... 181
【任务实现】..........................................................................................................................182
任务:在Kubernetes 下持久化部署.......................................................................................................... 182
【项目实训】Kubernetes 中MySQL 数据持久化存储的实现.....................................................184
【项目练习题】........................................................................................................................ 189
项目8
自动化部署................................................................. 191
任务8.1 持续集成及Jenkins 介绍......................................................................................... 191
【任务要求】..........................................................................................................................191
【相关知识】..........................................................................................................................192
8.1.1 持续集成概述.................................................................................................................................. 192
8.1.2 持续集成的特点.............................................................................................................................. 192
8.1.3 持续集成系统的组成...................................................................................................................... 192
8.1.4 持续集成常用工具.......................................................................................................................... 192
8.1.5 Jenkins 简介...................................................................................................................................... 193
【任务实现】..........................................................................................................................195
任务:利用Docker 部署Jenkins 持续集成工具...................................................................................... 195
【项目实训】部署Jenkins 持续集成工具.................................................................................. 199
任务8.2 利用Docker 构建持续集成平台................................................................................ 203
【任务要求】.......................................................................................................................... 203
【相关知识】..........................................................................................................................204
8.2.1 利用Docker 构建持续集成平台的步骤........................................................................................ 204
8.2.2 Docker+Harbor+Jenkins 工作原理................................................................................................. 204
【任务实现】.......................................................................................................................... 205
任务:使用Jenkins 实现制作镜像并推送到Harbor............................................................................... 205
【项目实训】使用Git+Jenkins+Docker+Harbor 实现持续集成................................................. 211
【项目练习题】........................................................................................................................ 221

读者评论

赶紧抢沙发哦!

我要评论

作者介绍

程宁,男,中共党员,副教授,硕士研究生学位。毕业于武汉大学软件学院。湖北轻工职业技术学院教务处处长。湖北省教育厅技能大赛专家库成员,多次担任全国、省级职业院校技能大赛裁判长、裁判工作。研究方向为网络工程和云计算。主持多项省级课题,在国内多家知名刊物上发表论文数十篇、出版10余本精品教材。获得华为颁发的”HICE网络专家”资格证书。

推荐用户

相关图书

  • 网络互联技术(实践篇)(第2版)

    李畅 刘志成 张平安 吴细花 孙道远 李俊才 安淑梅 汪双顶

    本书是从数百个来自企业的网络工程项目中,筛选出 50 份典型网络工程项目文档整理而成的。全书按照交换单元、路由...

    ¥59.80
  • 商务数据分析与应用(微课版)

    蒋辉 尹倩 刘金美 杨慧珠 殷媛 李明月

    本书基于商务数据分析岗位的职责,全方位介绍了商务数据分析方法与实战应用。书中从商务数据分析基础出发,按照商务数...

    ¥59.80
  • 工业网络技术(微课版)

    万旭成,张智勇,刘加森

    本书全面介绍工业网络技术的基本原理、关键技术及其在现代工业自动化中的应用。全书共7 个项目,分为工业网络概述、...

    ¥59.80
  • Kubernetes集群部署与运维(慕课版)

    朱川

    本书紧紧围绕Kubernetes国际认证CKA考试、1+X云计算相关认证知识体系与考点,循序渐进地讲解了Kub...

    ¥59.80
  • Python数据分析基础教程(微课版)(第2版)

    郑丹青

    本书详细讲解Python数据分析的相关内容,共10章,第1~9章分别讲解数据分析概述、Python与数据分析、...

    ¥59.80
人邮微信
本地服务
人邮微信
教师服务
二维码
读者服务
读者服务
返回顶部
返回顶部