【5601】-系统学习Docker 践行DevOps理念
第1章 容器技术和Docker简介
容器技术和Docker的简单介绍,课程源码的获取和实验环境搭建的说明
1-1 Docker导学
1-2 容器技术概述
1-3 Docker魅力初体验
1-4 课程源码获取和注意事项
第2章 Docker环境的各种搭建方法
本章详细讲解了Docker实验环境的各种搭建方法,在不同的操作系统,如windows,Mac,Linux上搭建,在不同的平台,如主机和云平台上搭建,用不同的工具,如shell,docker-machine,vagrant去搭建。
2-1 Docker安装介绍
2-2 在Mac系统上安装Docker
2-3 在Windows系统上安装Docker
2-4 Vagrant&VirtualBox for Mac
2-5 Vagrant&VirtualBox for Windows
2-6 在CentOS上安装Docker
2-7 Docker Machine的本地使用
2-8 在windows系统下docker-machine的使用
2-9 Docker Machine在亚马逊AWS云上的使用
2-10 Docker Playground
2-11 本章总结
第3章 Docker的镜像和容器
本章主要讲解Docker技术里最为基础的两大概念:镜像和容器。镜像的 获取方式:从registry拉取,从Dockerfile构建;容器的基本操作:创建,启动,停止删除。
3-1 Docker架构和底层技术简介
3-2 Docker Image概述
3-3 DIY一个Base Image
3-4 初识Container
3-5 构建自己的Docker镜像
3-6 Dockerfile语法梳理及最佳实践
3-7 RUN vs CMD vs Entrypoint
3-8 镜像的发布
3-9 Dockerfile实战
3-10 容器的操作
3-11 Dockerfile实战(2)
3-12 容器的资源限制
第4章 Docker的网络
这一章会从Linux的network namespace开始,通过详细讲解Docker的内置网络host和bridge是怎么使用的,来给大家展示不同容器之间网络的隔离和互访是如何实现的。当然好包括一个高级话题:Docker的多机通信和Overlay网络介绍
4-1 本章概述和实验环境介绍
4-2 网络基础回顾
4-3 Linux网络命名空间
4-4 Docker bridge0详解
4-5 容器之间的link
4-6 容器的端口映射
4-7 容器网络之host和none
4-8 多容器复杂应用的部署演示
4-9 Overlay和Underlay的通俗解释
4-10 Docker Overlay网络和etcd实现多机容器通信
第5章 Docker的持久化存储和数据共享
数据库容器的数据如何才能不会丢失?本章会给大家讲解Docker的持久化存储技术。Docker的数据共享技术能极大提高开发人员的开发效率,边写代码,边看运行结果。
5-1 本章介绍
5-2 本章实验环境介绍
5-3 数据持久化之Data Volume
5-4 数据持久化之Bind Mouting
5-5 开发者利器-Docker+Bind Mout
第6章 Docker Compose多容器部署
如何快速部署和管理一个具有多容器的应用?本章会介绍docker Compose这个强大的工具,包括其安装和基本使用,以及快速实现应用的水平扩展和负载均衡。
6-1 根据前面所学部署一个wordpress
6-2 Docker Compose到底是什么
6-3 Docker Compose的安装和基本使用
6-4 水平扩展和负载均衡
6-5 部署一个复杂的投票应用
第7章 容器编排Docker Swarm
想在生产环境中使用Docker?那你肯定离不开容器编排技术,本章会介绍Docker内置的容器编排工具Docker Swarm,包括Swarm的基本架构介绍,集群搭建,服务的创建,维护和水平扩展,服务的内部和外部访问,Secret的管理和使用。
7-1 容器编排Swarm介绍
7-2 创建一个三节点的swarm集群
7-3 Service的创建维护和水平扩展
7-4 在swarm集群里通过service部署wordpress
7-5 集群服务间通信之Routing Mesh
7-6 Routing Mesh之Ingress负载均衡
7-7 Docker Stack部署Wordpress
7-8 作业解答之部署投票应用
7-9 Docker Secret管理和使用
7-10 Docker Secret在Stack中的使用
7-11 Service更新
第8章 DevOps初体验——Docker Cloud和Docker企业版
本章介绍Docker的两个收费产品,一个是Docker Cloud,一个是Docker企业版。包括Docker Cloud的使用,CI/CD DevOps体验,Docker企业版的本地安装和阿里元安装,Docker企业版UCP和DTR的基本使用。
8-1 谈钱不伤感情-Docker的收费模式
8-2 Docker Cloud简介
8-3 Docker Cloud之自动build Docker image
8-4 Docker Cloud之持续集成和持续部署
8-5 Docker企业版的在线免费体验
8-6 Docker企业版本地安装之UCP
8-7 Docker企业版本地安装之DTR
8-8 Docker企业版UCP的基本使用演示
8-9 体验阿里云的容器服务
8-10 在阿里云上安装Docker企业版
8-11 Docker企业版DTR的基本使用演示
第9章 容器编排Kubernetes
本章介绍容器编排领域的领头羊Kubernetes。包括Kubernetes架构介绍,集群的本地搭建和Tectonic在亚马逊AWS上的搭建方式,Kubernetes的重要概念:Replication Controller, Deployment,Service介绍和操作演示,横向扩展,负载均衡等。
9-1 Kubenetes简介
9-2 Minikube快速搭建K8S单节点环境
9-3 K8S最小调度单位Pod
9-4 ReplicaSet和ReplicationController
9-5 Deployment
9-6 使用Tectonic在本地搭建多节点K8S集群
9-7 k8s基础网络Cluster Network
9-8 Service简介和演示
9-9 NodePort类型Service以及Label的简单实用
9-10 准备工作——使用kops在亚马逊AWS上搭建k8s集群
9-11 使用kops在亚马逊AWS上搭建k8s集群
9-12 LoadBlancer类型Service以及AWS的DNS服务配置
9-13 在亚马逊k8s集群上部署wordpress
第10章 Kubernetes简介和安装(新)
本章主要介绍了Kuberntes到底是什么,它的基本概念以及软件架构。然后介绍了几种搭建kubernetes环境的方法,包括:在本地通过minikube搭建单节点的测试环境;通过kubeadm在本地搭建多节点的环境;Google的GKE快速搭建多节点环境。 大家需要按照自己的实际情况,选择1-2种方法,准备好自己的k8s实验环境,开始下一章的学...
10-1 Kubenetes简介
10-2 K8s安装的方法简介
10-3 在windows系统上安装使用minikube
10-4 在Mac系统上安装使用minikube
10-5 使用kubeadm搭建多节点K8S集群
10-6 Google云平台的k8s服务
第11章 Kubernetes中的基本概念和操作
本章是k8s的入门章节,主要介绍了k8s中最重要的几个概念,包括节点,标签,pod,deployment等,并且通过实际操作演示,详细介绍了k8s中这几种资源的创建,使用等基本操作。 最后给想深入学习k8s的同学,指出了后续的学习方法。...
11-1 kubectl的基本使用
11-2 k8s的节点和标签
11-3 k8s调度的最小单位pod(上)
11-4 k8s调度的最小单位pod(下)
11-5 Namespace命名空间
11-6 创建我们自己的context
11-7 Controller和Deployment
11-8 deployment的演示
11-9 Replicaset在Deployment更新中的作用
第12章 容器的的运维和监控
本章主要面向运维人员,一起看一下对于部署的应用,如何通过Docker自带的命令和第三方的工具监控应用是否正常运行,比如Docker stat,Prometheus,Cadvisor, ELK等。
12-1 容器的基本监控
12-2 k8s集群运行资源监控——Heapster+Grafana+InfluxDB
12-3 根据资源占用自动横向伸缩
12-4 k8s集群Log的采集和展示——ELK+Fluentd
12-5 k8s集群监控方案Prometheus
第13章 Docker+DevOps实战——过程和工具
本章秉承DevOps的思想,给大家完整的演示DevOps的一种实现方案,其中涉及到GitLab版本管理,Docker-Compose本地测试,GitLab CI持续集成,持续部署,AWS,Kubernetes生产环境等工具和组件。通过一个实际示例项目和大家一起看一下,从需求提出,到生产环境更新的完整DevOps过程。...
13-1 本章简介
13-2 搭建GitLab服务器
13-3 搭建GitLab CI服务器和Pipeline演示
13-4 基于真实Python项目的CI演示
13-5 简单Java项目的CI演示
13-6 使用Python项目演示的CICD流程
13-7 CI实现版本自动发布
13-8 本章总结和如何继续学习
第14章 课程总结
对前面章节进行简单的总结
14-1 不是总结的总结
本课程已完结