课程简介
学习本课程,学员将会对Docker、Kubernetes有一个系统、全面的认识。通过学习,学员将能掌握相关的知识体系,并能够投入到项目实战中去。
本课程采用实战优先的原则,讲解如何将应用容器化、如何实现资源的合理分配、并将应用部署到Kubernetes平台。(本课程适用于2-4天)
需要安装:
1.Docker
2.Kubernetes
目标收益
深入理解Docker与Kubernetes的核心概念、常用对象、常见用法
具在项目汇总落地Docker、Kubernetes的能力
沉淀Docker、Kubernetes完整知识体系
培训对象
对Docker感兴趣的运维人员
对Kubernetes感兴趣的架构师
课程大纲
Docker基础 |
Docker简介 Docker安装与配置 镜像加速器安装与配置 Docker架构剖析 可视化操作工具Portainer TLDR |
镜像与容器 |
镜像与容器 镜像相关命令详解 容器常用命令详解 实操1:用Docker命令运行第一个容器(10min) |
镜像管理 |
Docker Hub 用Docker Registry实现私有Registry 第三方Docker Registry:Nexus搭建与使用 第三方Docker Registry:Habor搭建与使用 |
Dockerfile详解 |
Dockerfile常用指令详解 Dockerfile最佳实践 实操1:使用Dockerfile构建镜像(10min) 实操2:将构建的镜像上传到Docker仓库(10min) |
Kubernetes初探 |
Kubernetes是什么 Kubernetes单机版搭建 Kubernetes集群搭建 Kubernetes架构及组件详解 kubectl命令基础 Kubernetes工具:Dashboard |
资源管理基础 |
资源对象定义与API 对象类资源格式 管理Namespace 管理Pod资源 |
Pod管理 |
Pod定义 Pod基本用法 静态Pod 标签与标签选择器 Pod生命周期 存活探针 就绪探针 资源需求与限制 |
Pod控制器详解 |
常用Pod控制器 Deployment控制器 创建Deployment 更新策略 升级与回滚 扩容与缩容 DaemonSet控制器 StatefulSet控制器 Job、CronJob控制器 实战:应用发布练习(20min) |
Service |
Service是什么 创建Service 服务发现 负载均衡 服务暴露 Headless Service 实战:服务发布练习(20min) |
Ingress详解 |
Ingress是什么vs NodePort、LoadBalancer Ingress工作原理 单服务Ingress 基于名称的虚拟主机 配置TLS 更新Ingress |
数据持久化 |
临时存储卷 主机存储卷 网络存储卷 动态存储申请:PV、PVC、StorageClass 实战:为应用添加持久化磁盘(20min) |
配置管理ConfigMap与Secret |
ConfigMap是什么 Secret是什么 通过文件挂载方式使用 通过环境方式使用 通过命令行方式使用 |
Pod调度 |
NodeSelect定向调度 容忍与污点 亲和性与反亲和性调度 优先级与抢占式调度 Pod扩容与缩容-水平自动扩缩容HPA Pod扩容与缩容-垂直自动扩缩容VPA |
Helm |
Helm是什么 Helm安装 核心概念 Chart基本操作(搜索、安装、跟踪发布状态、自定义配置) 升级与回滚 Chart原理 创建自己的Chart |
Jenkins |
Jenkins安装与配置 用自由风格的项目交付应用 用流水线交付应用 用Jenkins实现GitOps 镜像与Tag管理 Jenkins综合实战 |
Argo CD |
安装 基础配置 用Argo CD交付应用 Argo CD总结 |
综合案例演示 | 演示项目从开发到构建镜像、push私服、再用Jenkins拉起、并升级的全过程 |
课程总结与答疑 | 课程总结与答疑 |
Docker基础 Docker简介 Docker安装与配置 镜像加速器安装与配置 Docker架构剖析 可视化操作工具Portainer TLDR |
镜像与容器 镜像与容器 镜像相关命令详解 容器常用命令详解 实操1:用Docker命令运行第一个容器(10min) |
镜像管理 Docker Hub 用Docker Registry实现私有Registry 第三方Docker Registry:Nexus搭建与使用 第三方Docker Registry:Habor搭建与使用 |
Dockerfile详解 Dockerfile常用指令详解 Dockerfile最佳实践 实操1:使用Dockerfile构建镜像(10min) 实操2:将构建的镜像上传到Docker仓库(10min) |
Kubernetes初探 Kubernetes是什么 Kubernetes单机版搭建 Kubernetes集群搭建 Kubernetes架构及组件详解 kubectl命令基础 Kubernetes工具:Dashboard |
资源管理基础 资源对象定义与API 对象类资源格式 管理Namespace 管理Pod资源 |
Pod管理 Pod定义 Pod基本用法 静态Pod 标签与标签选择器 Pod生命周期 存活探针 就绪探针 资源需求与限制 |
Pod控制器详解 常用Pod控制器 Deployment控制器 创建Deployment 更新策略 升级与回滚 扩容与缩容 DaemonSet控制器 StatefulSet控制器 Job、CronJob控制器 实战:应用发布练习(20min) |
Service Service是什么 创建Service 服务发现 负载均衡 服务暴露 Headless Service 实战:服务发布练习(20min) |
Ingress详解 Ingress是什么vs NodePort、LoadBalancer Ingress工作原理 单服务Ingress 基于名称的虚拟主机 配置TLS 更新Ingress |
数据持久化 临时存储卷 主机存储卷 网络存储卷 动态存储申请:PV、PVC、StorageClass 实战:为应用添加持久化磁盘(20min) |
配置管理ConfigMap与Secret ConfigMap是什么 Secret是什么 通过文件挂载方式使用 通过环境方式使用 通过命令行方式使用 |
Pod调度 NodeSelect定向调度 容忍与污点 亲和性与反亲和性调度 优先级与抢占式调度 Pod扩容与缩容-水平自动扩缩容HPA Pod扩容与缩容-垂直自动扩缩容VPA |
Helm Helm是什么 Helm安装 核心概念 Chart基本操作(搜索、安装、跟踪发布状态、自定义配置) 升级与回滚 Chart原理 创建自己的Chart |
Jenkins Jenkins安装与配置 用自由风格的项目交付应用 用流水线交付应用 用Jenkins实现GitOps 镜像与Tag管理 Jenkins综合实战 |
Argo CD 安装 基础配置 用Argo CD交付应用 Argo CD总结 |
综合案例演示 演示项目从开发到构建镜像、push私服、再用Jenkins拉起、并升级的全过程 |
课程总结与答疑 课程总结与答疑 |