课程编号
编制人
制定日期
修订日期
审定组(人)
审定日期
20  .
Docker容器技术》课程教学大纲
一、课程基本信息
开课单位:
课程名称:《Docker容器技术》
课程编号:
课程类型:专业课
学    分: 4
学    时: 54
开设专业:  专业
前导课程:
二、课程任务和目标
(一)课程任务
容器是继大数据和云计算之后的又一热门技术,越来越多的应用以容器的方式在开发、测试和生产环境中运行。作为目前较为流行的容器平台,Docker是开发、发布和运行应用的开放平台。使用Docker可以大大减少开发中的代码编写与运行之间的时间延迟,提高软件开发的效率和质量,实现产品的快速交付和快速迭代。软件开发人员、IT实施和运维人员都需要掌握这一新兴技术。
本课程是计算机软件专业的专业拓展课程。通过本课程的学习,学生掌握利用Docker发布、测试和部署应用程序的技术,学会Docker容器编排、应用程序容器化、自动化构建与持续集成,以及Docker集配置的具体方法,能够胜任容器化应用的构建和维护工作,即在应用程序开发、测试、部署和运维工作中的Docker实施工作。
整个课程按照从基础到应用,从基本功能到高级功能的逻辑循序渐进进行讲授,要求学生
通过动手实践来掌握Docker使用操作技能。
(二)课程目标
理论上,要求学生掌握Docker的基础知识,理解容器、镜像、仓库、注册中心等概念,理解Docker网络和存储,以及Docker集的运行机制。技能上,要求学生能熟练掌握容器和镜像的使用和操作、容器的网络和存储配置,以及容器编排方法,熟悉应用程序容器化流程,初步掌握项目的持续集成和持续部署方法,能够配置Docker集并部署分布式应用。
1、能力目标
(1)培养学生基于容器化应用测试、部署和运维的工程能力
(2)培养学生项目持续集成和持续部署的规划和实施的能力
(3)培养学生发现问题、分析问题和解决问题的能力
(4)培养良好的文化修养、职业道德、服务意识和敬业精神
(5)培养团队合作和协调沟通能力
2、知识目标
(1)了解Docker的概念、架构和特性
(2)掌握Docker的安装部署
(3)熟悉镜像、容器和注册中心的使用和操作
(4)学会使用Dockerfile构建镜像
(5)掌握Docker的网络与存储配置
(6)掌握Docker容器与Docker守护进程的运维
(7)掌握Docker容器编排
(8)掌握应用程序容器化的方法
(9)掌握镜像的自动化构建方法
(10)初步掌握项目的持续集成和持续部署
(11)掌握Docker Swarm集的建立和维护方法
(12)掌握应用程序在集中的部署和管理
三、教学条件
技术网络机房,在较高配置的单台Windows计算机上使用VMware Workstation组建实验环境,确保能够访问互联网。最后一个单元本课程对实验环境要求更高,需要搭建3个主机节点的集网络。
建议在虚拟机上进行实验操作,可以充分利用虚拟机的快照功能来备份和恢复实验环境,利用其克隆功能来快速安装系统。
四、教学内容及学时安排
序号
单元
教学内容
教学目标
学时
训练项目
必备知识
1
Docker安装
1.了解Docker用例
2.调查国内的Docker应用现状
3.安装Docker CE
4.了解docker命令的基本用法
5.使用命令运行容器
1.Docker的概念
2.容器与虚拟机的区别
3.Docker引擎
4.Docker架构
5.Docker底层技术
6.Docker版本
7.Docker命令行接口
明确Docker的概念,弄清容器与虚拟机的区别,理解Docker的架构,了解Docker的优势和应用领域,学会Docker的安装,并初步掌握docker命令的用法
4
2
Docker快速入门
1.掌握镜像的操作方法
2.掌握容器的基本操作
3.熟悉Docker Hub的使用
4.了解第三方Docker注册中心的使用
5.建立和使用自己的Docker注册中心
6.基于容器构建镜像
7.基于Dockerfile构建镜像
1.镜像的概念
2.镜像的分层结构
3.容器的概念
4.容器内部的存储
5.Docker注册中心6.Docker镜像仓库7.Dockerfile语法
掌握Docker镜像和容器的基础知识,学会镜像和容器的操作方法;学会镜像仓库管理;学会使用Dockerfile构建镜像
6
3
Docker网络与存储配置
1.掌握桥接网络的使用方法
2.掌握容器端口映射的配置方法
3.熟悉卷的创建和管理操作
4.掌握容器挂载卷的操作方法
5.熟悉容器绑定挂载的操作
1.Docker网络驱动
2.容器的网络模式
3.容器之间的网络通信4.容器与外部的网络通信
5.容器本地存储与外部存储
6.容器的挂载类型
docker打包镜像掌握Docker网络和存储的配置方法,能够通过网络配置让容器与其他容器和外部网络进行通信,通过挂载外部存储实现容器数据的持久存储
6
4
Docker容器与守护
进程运维
1.在一个容器中运行多个服务
2.配置容器重启策略
3.熟悉容器的内存、CPU和I/O资源限制操作
4.使用cAdvisor监控容器
5.使用Weave Scope监控容器
6.熟悉容器日志工具使用方法
7.管理Docker对象
8排查Docker守护进程故障
1.容器的自动重启配置
2.Docker的实时恢复功能
3容器健康检查机制
4容器运行时选项覆盖Dockerfile指令
5容器资源限制的实现机制
6Docker监控工具
7Docker日志工具
8Docker对象的标记
9Docker守护进程的启动方式、
10Docker守护进程的配置方式
重点掌握Docker容器与守护进程的运维管理,涉及容器的持续运行、容器运行资源控制、容器监控与日志管理,以及Docker守护进程本身的管理和Docker对象的通用配置
6
5
Docker容器编排
1掌握Docker Compose的安装
2.熟悉使用Docker Compose的基本步骤
3掌握Compose文件的编写
4掌握Docker Compose构建、部署和管理应用程序的全套流程
5从源代码开始构建、部署和管理应用程序
6.组合使用多个Compose文件
1.Docker Compose的项目、服务和容器
2.Docker Compose的工作机制
3.Docker Compose的特点
4.Docker Compose的应用场景
5.Compose文件的结构和格式
6.服务、网络和卷定义的Compose基本语法
7.Docker Compose的命令格式
8.Docker Compose的常用命令
9.Docker Compose的环境变量
掌握Docker Compose的安装和使用方法,能够在单主机上部署多个容器的应用程序
6
6
应用程序容器化
1.使用scratch创建简单的镜像
2.掌握多阶段构建镜像的方法
3.熟悉应用程序容器化的完整过程
4.学会使用Docker Maven插件打包Java程序
4.掌握基于Tomcat的应用程序的容器化方法。
5.掌握Spring Boot应用程序的Docker部署方法
6.熟悉PHP官方镜像的使用
7.使用Docker Compose部署LAMP平台
8.熟悉Python官方镜像的使用。
7.使用Docker Compose部署Django应用程序
1.编写Dockerfile的准则
2.应用程序镜像包含的内容
3.应用程序容器化的基本步骤
4.应用程序容器化的一般方法
5.Java Web开发技术及发布环境
6.PHP应用程序与LAMP平台
7.Python程序的特点
8.Python Web框架
掌握了将应用程序部署到容器中的方法,涉及Java、PHP和Python,以及Node.js等应用程序的Docker部署
8
7
自动化构建与持续
集成
1.熟悉Git工具的使用方法
2.掌握阿里云提供的自动化构建方法
3.学会使用Drone和Gogs搭建持续集成平台
4.持续集成和持续部署项目
1.代码分支管理
2.Docker Hub的自动化构建
3.持续集成与持续部署的概念
4.持续集成与持续部署的工具
5.Drone的工作机制
6..l文件语法
学会镜像的自动化构建,初步掌握基于Docker的持续集成和持续部署的实施方法
6
8
Docker集配置与应用
1.掌握Swarm集的创建方法
2.熟悉Swarm节点的管理操作
3.熟悉服务的创建、伸缩、滚动更新、回滚操作和对外发布操作
4.掌握服务放置的控制
5.创建和使用自定义overlay网络
6.配置外部负载平衡
7.使用Docker栈部署和管理应用程序
1.Swarm集的概念
2.Swarm节点
3.Swarm的服务、任务和容器
4.Swarm路由网
5.Swarm服务发现的工作机制
6.Swarm的状态自动调整与故障转移
7.Swarm负载平衡工作机制
8.Docker栈
9.Docker栈的文件格式
掌握Docker Swarm集的建立和维护方法,熟悉应用程序在集中的部署和管理
8
9
复习与考核
全面的操作技能
全面的基础知识
对本课程的内容进行回顾和总结,综合运用Docker知识,提高相关的实施操作技能
4
学 时 合 计
54

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。