关于本书的内容有任何问题,请联系 初美呈
目录 项目1 1 Docker安装 1 任务1.1 了解Docker 1 任务说明 1 知识引入 1 1.1.1 什么是Docker 1 1.1.2 Docker的优势 2 1.1.3 Docker架构 2 1.1.4 应用程序部署方式的演变 4 任务实现 4 任务1.1.1 了解Docker用例 4 任务1.1.2 调查国内的Docker应用现状 6 任务1.2 安装Docker 8 任务说明 8 知识引入 8 1.2.1 Docker Engine 8 1.2.2 Docker Desktop 9 任务实现 11 任务1.2.1 安装Docker Engine 11 任务1.2.2 安装Docker Engine之后的配置 14 任务1.3 Docker命令行使用 15 任务说明 15 知识引入 15 1.3.1 Docker的命令行接口 15 1.3.2 docker命令列表 15 任务实现 17 任务1.3.1 熟悉docker命令的基本语法 17 任务1.3.2 运行一个容器 19 项目实训 19 项目实训1 安装Docker Engine 20 项目实训2 使用docker命令 20 项目总结 20 项目2 21 Docker快速入门 21 任务2.1 Docker镜像的使用与操作 21 任务说明 21 知识引入 22 2.1.1 什么是镜像 22 2.1.2 镜像的基本信息 22 2.1.3 镜像描述文件Dockerfile 23 2.1.4 Docker镜像操作命令 24 任务实现 25 任务2.1.1 掌握镜像的基本操作 25 任务2.1.2 验证镜像的分层结构 27 任务2.2 Docker容器的使用与操作 28 任务说明 28 知识引入 29 2.2.1 什么是容器 29 2.2.1 容器的基本信息 29 2.2.3 可写的容器层 29 2.2.4 Docker容器操作命令 30 2.2.5 Docker容器的生命周期 31 任务实现 32 任务2.2.1 创建并同时启动容器 32 任务2.2.2 掌握容器的其他常用操作 34 任务2.3 Docker注册中心的使用与操作 37 任务说明 37 知识引入 37 2.3.1 Docker注册中心 37 2.3.2 镜像仓库 38 任务实现 39 任务2.3.1 配置镜像加速器 39 任务2.3.2 使用阿里云容器镜像服务 40 任务2.3.3 自建Docker注册中心 44 任务2.4 构建镜像 45 任务说明 45 知识引入 46 2.4.1 基于容器生成镜像 46 2.4.2 Dockerfile格式 46 2.4.3 Dockerfile常用指令 47 2.4.4 区分RUN、CMD和ENTRYPOINT指令 52 2.4.5 镜像构建工具 53 任务实现 54 任务2.4.1 基于Dockerfile构建镜像 54 任务2.4.2 测试构建缓存 56 项目实训 57 项目实训1 Ubuntu镜像操作 57 项目实训2 Apache Web容器操作 57 项目实训3 使用自建的Docker注册中心 58 项目实训4 构建在Ubuntu系统上运行Nginx的镜像 58 项目总结 58 项目3 60 Docker网络与存储配置 60 任务3.1 Docker网络配置与管理 60 任务说明 60 知识引入 61 3.1.1 Docker网络概述 61 3.1.2 容器的网络模式 61 3.1.3 容器之间的通信 65 3.1.4 容器与外部网络之间的通信 65 3.1.5 容器的网络配置语法 66 3.1.6 Docker网络管理语法 67 任务实现 67 任务3.1.1 将容器连接到默认桥接网络 67 任务3.1.2 创建用户自定义桥接网络并连接容器 70 任务3.1.3 设置端口映射以允许外部网络访问容器 76 任务3.2 Docker存储配置与管理 77 任务说明 77 知识引入 77 3.2.1 容器本地存储与Docker存储驱动 77 3.2.2 容器与数据存储持久化 78 3.2.3 挂载类型及其选择 79 3.2.4 Docker卷管理命令 81 3.2.5 容器的文件系统挂载语法 81 任务实现 82 任务3.2.1 容器使用卷存储 82 任务3.2.2 容器使用绑定挂载 86 项目实训 89 项目实训1 创建和使用用户自定义桥接网络 89 项目实训2 使用Docker卷 90 项目实训3 使用绑定挂载 90 项目实训4 测试容器填充卷 90 项目总结 90 项目4 91 Docker容器与守护 进程运维 91 任务4.1 Docker容器配置进阶 91 任务说明 91 知识引入 91 4.1.1 容器的资源限制 91 4.1.2 容器的自动重启 95 4.1.3 在容器中运行多个服务 95 4.1.4 容器健康检查机制 95 4.1.5 运行时选项覆盖Dockerfile指令 96 任务实现 98 任务4.1.1 配置容器的自动重启策略 98 任务4.1.2 在容器中使用supervisord管理PHP和Nginx服务 100 任务4.1.3 测试容器健康检查功能 101 任务4.2 容器监控与日志管理 102 任务说明 102 知识引入 102 4.2.1 Docker监控工具 102 4.2.2 Docker容器日志工具 102 4.2.3 容器日志驱动 103 任务实现 105 任务4.2.1 熟悉Docker监控命令的使用 105 任务4.2.2 使用cAdvisor监控容器 105 任务4.2.3 将容器的日志重定向到Linux日志系统 108 任务4.2.4 使用Logspout收集所有容器的日志 109 任务4.3 配置和管理Docker守护进程 111 任务说明 111 知识引入 112 4.3.1 Docker守护进程的启动 112 4.3.2 Docker守护进程的配置 113 4.3.3 Docker的实时恢复功能 114 任务实现 115 任务4.3.1 从Docker守护进程获取实时事件 115 任务4.3.2 查看Docker守护进程日志 116 任务4.3.3 测试Docker的实时恢复功能 116 任务4.3.4 开启Docker守护进程的远程访问 117 任务4.4 管理Docker对象 118 任务说明 118 知识引入 118 任务实现 118 任务4.4.1 管理Docker对象的标记 118 任务4.4.2 删除未使用的Docker对象 119 项目实训 119 项目实训1 容器的高级配置 119 项目实训2 实施容器监控 119 项目实训3 管理容器日志 120 项目实训4 配置和管理Docker守护进程 120 项目总结 120 项目5 121 定义和运行多容器应用程序 121 任务5.1 Compose入门 121 任务说明 121 知识引入 121 5.1.1 为什么要使用Compose 121 5.1.2 Compose的工作机制 122 5.1.3 Compose的特点 124 5.1.4 Compose的应用场景 124 5.1.5 Compose的版本演变 125 5.1.6 使用Compose的基本步骤 126 任务实现 使用Compose部署WordPress 126 任务5.2 编写Compose文件 129 任务说明 129 知识引入 129 5.2.1 Compose文件结构 129 5.2.2 服务定义 130 5.2.3 网络定义 135 5.2.4 卷定义 136 任务实现 137 任务5.2.1 编写定义单个服务的Compose文件 137 任务5.2.2 编写定义多个服务的Compose文件 139 任务5.3 使用Compose部署和管理应用程序 142 任务说明 142 知识引入 142 5.3.1 Compose命令行语法格式 142 5.3.2 Compose常用命令 143 5.3.3 Compose环境变量 145 5.3.4 组合使用多个Compose文件 146 任务实现 148 任务5.3.1 从源代码开始构建、部署和管理应用程序 148 任务5.3.2 更改Compose应用程序以适应不同环境 152 项目实训 154 项目实训1 使用Compose部署Web负载均衡应用程序 154 项目实训2 从源代码开始构建、部署和管理应用程序 155 项目总结 155 项目6 156 应用程序容器化 156 任务6.1 构建应用程序镜像 156 任务说明 156 知识引入 156 6.1.1 编写Dockerfile应遵循的准则和建议 156 6.1.2 创建自己的基础镜像 158 6.1.3 确定应用程序镜像包含的内容 159 6.1.4 应用程序镜像的构建和管理 159 任务实现 159 任务6.1.1 基于scratch构建简单的镜像 159 任务6.1.2 制作一个基于VNC的Firefox镜像 161 任务6.1.3 多阶段构建镜像 162 任务6.2 对应用程序进行容器化 163 任务说明 164 知识引入 164 6.2.1 应用程序容器化的基本步骤 164 6.2.2 部署容器化应用程序的方式 164 6.2.3 容器化过程中的应用程序代码处理 165 6.2.4 容器化应用程序镜像大小优化 165 6.2.5 容器化应用程序的数据持久化 165 任务实现 容器化Node.js应用程序 166 任务6.3 Java应用程序容器化 169 任务说明 169 知识引入 169 6.3.1 Java的特点 169 6.3.2 Java的Web应用程序开发技术 170 6.3.3 Java应用程序服务器 170 6.3.4 Maven工具与Docker Maven插件 171 6.3.5 Spring Boot应用程序 171 任务实现 172 任务6.3.1 容器化简单的Java应用程序 172 任务6.3.2 容器化Tomcat应用程序 174 任务6.3.3 容器化Spring Boot应用程序 176 任务6.4 Python应用程序容器化 180 任务说明 180 知识引入 181 6.4.1 Python程序 181 6.4.2 Python Web框架及其部署技术 181 6.4.3 Python官方镜像的基本使用 182 任务实现 183 任务6.4.1 容器化Flask应用程序 183 任务6.4.2 容器化Django应用程序 187 项目实训 192 项目实训1 容器化Spring Boot应用程序 192 项目实训2 使用Compose部署LAMP平台 193 项目实训3 使用Compose部署Django应用程序 193 项目总结 193 项目7 194 自动化构建与持续 集成 194 任务7.1 实现Docker镜像的自动化构建 194 任务说明 194 知识引入 195 7.1.1 代码管理与代码分支 195 7.1.2 持续集成与持续部署的概念 195 7.1.3 Docker镜像的自动化构建 196 7.1.4 GitLab与GitLab Runner 197 任务实现 198 任务7.1.1 部署GitLab服务器 198 任务7.1.2 基于GitLab实现Docker镜像自动化构建 202 任务7.2 基于Docker实现持续集成和持续部署 208 任务说明 209 知识引入 209 7.2.1 Docker与CI/CD的结合 209 7.2.2 CI/CD实施工具 210 7.2.3 CI/CD平台的组建思路 210 7.2.4 Jenkins的项目类型 211 7.2.5 Jenkins的流水线代码语法 212 任务实现 213 任务7.2.1 部署Jenkins服务器 213 任务7.2.2 使用Jenkins的流水线项目实施CI/CD 217 任务7.2.3 通过GitLab自动触发项目自动化构建和部署 224 项目实训 227 项目实训1 搭建GitLab平台实现Docker镜像自动化构建 227 项目实训2 结合Docker和Jenkins实现持续集成和持续部署 227 项目总结 227 项目8 228 Kubernetes部署容器化应用程序 228 任务8.1 部署Kubernetes集群 228 任务说明 228 知识引入 229 8.1.1 容器编排解决方案 229 8.1.2 Kubernetes集群的组成 229 8.1.3 Kubernetes集群的部署工具 231 8.1.4 Kubernetes的对象和资源 232 8.1.6 使用YAML文件描述应用程序 232 8.1.6 Kubernetes对象管理方法 233 任务实现 234 任务8.1.1 基于kind部署Kubernetes集群 234 任务8.1.2 在Kubernetes集群中运行并发布应用程序 237 任务8.2 在Kubernetes集群中部署开发的应用程序 240 任务说明 240 知识引入 241 8.2.1 将开发的应用程序部署到Kubernetes的基本流程 241 8.2.2 Jenkins的Maven项目CI/CD流程 241 任务实现 241 任务8.2.1 在Kubernetes集群中手动部署开发的应用程序 241 任务8.2.2 基于CI/CD平台将应用程序自动部署到Kubernetes集群 246 项目实训 251 项目实训1 手动将Python应用程序部署到Kubernetes 251 项目实训2 自动触发Maven项目构建并部署到Kubernetes 251 项目总结 252
本书基于openEuler(22.03 LTS SP3版)国产操作系统和OpenStack(Train版)云计...
本书全面、系统地讲解Kubernetes的基础知识和运维管理方法。本书共9个项目,包括从Docker转向Kub...
本书基于国产操作系统openEuler和云基础架构平台OpenStack编写,主要介绍云基础架构平台的部署、运...
根据高职高专教育的培养目标、特点和要求,本书由浅入深、全面系统地讲解了云计算技术的基础知识。全书共6章,内容包...
本书旨在使读者掌握服务器虚拟化平台的部署和运维方法。本书共9个项目。前7个项目主要以业界领先的VMware v...
随着云计算技术的飞速发展,企业对容器编排和管理的需求日益增长,Kubernetes作为领先的开源容器编排平台,...
本书是机器学习的入门教材,讲述机器学习的主流算法原理及其应用。全书着重对线性回归、Logistic回归、朴素贝...
本书系统地介绍了云计算基础架构与实践相关知识,全书共分为5个项目,项目1主要介绍了云计算的概念与发展趋势、云计...
本书详细介绍openEuler的基本概念和基础操作。全书共11章,分别为绪论、认识openEuler、Shel...
本书以Red Hat Enterprise Linux 9.2/CentOS Stream 9为平台,遵从学生...
我要评论