系统学习Docker 践行DevOps理念 2020全新升级
【课程介绍】Docker代表的容器技术是近两年的大热技术,和人工智能、区块链等热点不同,容器技术的门槛并不高,每一个开发、测试、运维人员都能在日常工作中掌握和使用,是当今IT从业人员的必备技能之一。本课程会带大家系统学习什么是容器,如何创建容器、管理容器;学习容器技术的各个细节(网络/存储/服务编排/监控),学习如何通过容器进行CI/CD持续集成,持续部署。学习Docker,让你成为更加优秀的IT工程师。
【课程目录】
- 第1章 容器技术和Docker简介容器技术和Docker的简单介绍,课程源码的获取和实验环境搭建的说明
- 1-1 Docker导学
- 1-2 容器技术概述
- 1-3 Docker魅力初体验
- 1-4 课程源码获取和注意事项
- 1-1 Docker导学
- 第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 不是总结的总结