近很多阿里内部的同学和客户私信来咨询如何学习 Docker 技术。为此,我们列了一个路线图供大家学习Docker和阿里云容器服务。这个列表包含了一些社区的资料和我们的原创文章。我们会随着Docker技术的发展持续更新本文,也会在云栖社区继续贡献内容来帮助同学们快速入门或持续提高。
Docker基础 101
- 学习Docker基本概念
- Docker容器
- Docker镜像
- Dockerfile初步概念
- 练习
- 安装Docker Toolbox或Docker Engine
- 配置本地Docker环境
- 利用Docker Machine创建本地Docker Environment
- 配置阿里云Docker镜像加速器
- 管理容器的生命周期与配置
- 创建、删除、检查、启动、停止容器 ...
- 环境变量
- 端口配置
- 学习端口映射和容器链接
- 学习利用volume保存持久化容器数据
- 学习检查容器日志
- docker logs
- 学习监控容器内部进程状态
- docker top 与 docker stats
- 故障排查
- 练习构建容器镜像,与镜像管理
- 构建Docker镜像
- 构建一个long run的docker应用
- 使用阿里云镜像管理服务
- 构建Docker镜像
容器编排基础 101
- 学习Docker Compose基本概念
- 编排模板 template
- 服务定义 service
- 应用项目 project
- 编排模板 template
- 练习
- 利用 docker compose 管理应用项目生命周期
- 创建、删除、检查、启动、停止容器 ...
- 更新
- Scale
- 利用 docker compose 构建镜像
- 利用 docker compose 管理应用项目生命周期
阿里云容器服务基础 101
- 学习基本概念: 阿里云容器服务简介
- 集群,节点
- 编排模板, 应用项目
- 练习
- 创建管理集群
- 部署应用
- 部署一个docker镜像
- 部署一个docker compose模板
- 容器应用生命周期
- 启动、停止
- 变更配置
- 伸缩
- 基本管控
- 查看容器日志
- 查看容器监控信息
- 查看节点监控信息
- 查看应用操作日志
- 通过Docker客户端连接集群
- 实现简单持续交付
软件开发者Docker基础 101
- Java 开发者
- Tomcat: 使用Docker运行Java Web应用
- SpringBoot: 在阿里云容器服务上创建一个spring boot应用
- Python 开发者
- NodeJS 开发者
- .Net 开发者
Docker进阶 201
- Docker镜像优化
- Docker网络
- Docker存储
- 进程管理知识
- Docker安全
- Docker Machine云端创建执行环境
- 搭建私有Docker Registry
- Docker Compose进阶
- 利用Compose V2模板支持容器、网络、存储的编排
- 变量替换
- Docker内置编排实现 Swarm Mode进阶
- 使用Windows容器
- Docker 1.13 编排能力进化
阿里云容器服务进阶 201
- Docker与微服务关系:TBD
- 服务路由与负载均衡:在容器服务中如何暴露服务到公网并配置负载均衡
- 通过二级域名实现应用路由
- 通过自定义SLB实现服务路由
- 服务发现
- DNS服务发现
- 自定义服务路由:基于Docker的应用负载均衡与服务发现
- 阿里云存储插件扩展
- OSSFS:用OSS数据卷实现Wordpress附件共享
- NAS:在阿里云容器服务中使用NAS(NFS)数据卷
- 监控
- 云监控服务集成:(TBD)
- 开源监控日志服务
- 容器应用监控:(TBD)
- 日志
- 日志服务集成
- 开源ELK日志服务方案
- 容器调度
- 持续交付进阶
- 网络相关
- 如何保证摘除公网EIP的容器服务VPC集群可以正常访问公网
- 容器服务是如何做到的跨主机的容器间通信?
- 混合云方案:(TBD)
- Open API
- 高可用容器集群与容器应用
- Docker与机器学习系列
参考资料
Docker发展很快,很多要靠自己实践,结合自己的实际场景和问题操练一下。
官方文档
- docs.docker.com - 强烈推荐