|
|
|
|
@ -0,0 +1,131 @@
|
|
|
|
|
# 邹佳轩第9周详细工作计划
|
|
|
|
|
|
|
|
|
|
## 基本信息
|
|
|
|
|
- **姓名**: 邹佳轩
|
|
|
|
|
- **计划周期**: 第9周(2025-11-17 至 2025-11-23)
|
|
|
|
|
- **项目**: 基于Hadoop的故障检测与自动恢复项目
|
|
|
|
|
- **计划制定时间**: 2025-11-17
|
|
|
|
|
- **工作时间**: 每天20:00-21:30(1.5小时/天,共10.5小时)
|
|
|
|
|
|
|
|
|
|
## 本周核心目标(第六层:容器化层)
|
|
|
|
|
- 技术栈聚焦:**Docker | Docker Compose | Kubernetes(本地)**
|
|
|
|
|
|
|
|
|
|
### 主要任务概览
|
|
|
|
|
本周,围绕后端应用的容器化与本地编排进行系统性学习与落地:从镜像构建与规范,到 Compose 多服务编排,再到本地 K8s 部署与健康检查、资源配额与配置管理,最后输出部署与联调指南与CI/CD构建脚本草案。
|
|
|
|
|
|
|
|
|
|
### 核心目标
|
|
|
|
|
1. **Docker 基础与镜像构建(周一)**:掌握镜像/容器/网络/卷,完成后端服务的 Dockerfile 与镜像构建。
|
|
|
|
|
2. **Compose 本地编排(周二)**:完成多服务开发环境(后端+依赖)的 docker-compose.yml 与 .env 管理。
|
|
|
|
|
3. **Kubernetes 本地部署(周三)**:使用 kind/minikube 部署 Deployment/Service,配置 Readiness/Liveness 与资源配额。
|
|
|
|
|
4. **容器化规范与会议(周四)**:与团队统一镜像标签、环境变量、日志与监控约定,形成规范文档。
|
|
|
|
|
5. **部署验证与文档(周五)**:完成端到端部署验证与故障注入测试,输出部署与联调指南。
|
|
|
|
|
6. **CI/CD 构建(周六)**:编写镜像构建与推送的脚本或流水线草案(本地/平台均可)。
|
|
|
|
|
7. **演示与复盘(周日)**:演示容器化部署效果与联调流程,整理问题清单与下周计划。
|
|
|
|
|
|
|
|
|
|
### 质量目标
|
|
|
|
|
- 镜像符合最佳实践(分层、缓存、最小基础镜像),可重复构建与快速启动。
|
|
|
|
|
- Compose 与 K8s 清单规范统一,环境变量/配置管理清晰,健康检查与资源约束明确。
|
|
|
|
|
- 部署与联调指南完整可用,具备最小可运行演示能力(本地环境)。
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
## 周一(2025-11-17)
|
|
|
|
|
**主题:Docker 基础与镜像构建**
|
|
|
|
|
|
|
|
|
|
### 20:00-21:30:镜像与 Dockerfile
|
|
|
|
|
- **学习任务**:理解镜像/容器/网络/卷;为 FastAPI 后端编写 Dockerfile(基础镜像、依赖、启动命令)。
|
|
|
|
|
- **具体方法**:多阶段构建/分层缓存、避免过大镜像;本地构建与运行测试。
|
|
|
|
|
- **产出**:`Dockerfile`、镜像构建与运行说明(含常见问题)。
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
## 周二(2025-11-18)
|
|
|
|
|
**主题:Docker Compose 本地编排**
|
|
|
|
|
|
|
|
|
|
### 20:00-21:30:多服务编排与环境管理
|
|
|
|
|
- **学习任务**:编写 `docker-compose.yml` 与 `.env`;定义服务依赖、网络、卷与重启策略。
|
|
|
|
|
- **具体方法**:后端服务与依赖服务(示例:数据库/消息队列占位)组合;统一环境变量与端口映射。
|
|
|
|
|
- **产出**:`docker-compose.yml`、`.env`、启动/停止与日志查看脚本/说明。
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
## 周三(2025-11-19)
|
|
|
|
|
**主题:Kubernetes 本地部署与健康检查**
|
|
|
|
|
|
|
|
|
|
### 20:00-21:30:K8s 清单与验证
|
|
|
|
|
- **学习任务**:在 kind/minikube 部署 `Deployment` 与 `Service`;配置 `Readiness/Liveness`、资源配额(CPU/内存)、限流占位策略。
|
|
|
|
|
- **具体方法**:编写 `deployment.yaml`、`service.yaml`、`configmap.yaml`;通过 `kubectl` 验证状态与事件。
|
|
|
|
|
- **产出**:K8s 清单与部署脚本/说明(含常用命令与验证步骤)。
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
## 周四(2025-11-20)
|
|
|
|
|
**主题:容器化规范会议与纪要**
|
|
|
|
|
|
|
|
|
|
### 20:00-21:30:与团队对齐容器化规范
|
|
|
|
|
- **会议议题**:镜像命名与标签策略;环境变量与配置管理;日志/监控接入约定;健康检查与资源配额标准。
|
|
|
|
|
- **产出**:会议纪要与规范文档(镜像/Compose/K8s 清单规范与示例)。
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
## 周五(2025-11-21)
|
|
|
|
|
**主题:部署与联调验证**
|
|
|
|
|
|
|
|
|
|
### 20:00-21:30:端到端验证与故障注入
|
|
|
|
|
- **任务**:完成部署验证(启动与访问接口);执行故障注入(模拟容器重启/资源紧张/Pod 不就绪)并记录现象。
|
|
|
|
|
- **产出**:部署验证报告(截图/日志/命令)、问题与对策记录、联调步骤与注意事项。
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
## 周六(2025-11-22)
|
|
|
|
|
**主题:CI/CD 构建与推送**
|
|
|
|
|
|
|
|
|
|
### 20:00-21:30:构建脚本与流水线草案
|
|
|
|
|
- **任务**:编写镜像构建与推送脚本(本地/平台);设计 CI/CD 流程(构建/测试/推送)。
|
|
|
|
|
- **产出**:构建脚本或流水线配置草案(如 GitHub Actions/平台 YAML),镜像仓库对接说明。
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
## 周日(2025-11-23)
|
|
|
|
|
**主题:演示与复盘**
|
|
|
|
|
|
|
|
|
|
### 20:00-21:30:演示与总结
|
|
|
|
|
- **任务**:完成容器化部署演示(Docker/Compose/K8s 任一方案),整理本周产出与问题,制定下周计划(持久化接入、监控与告警细化)。
|
|
|
|
|
- **产出**:演示记录、测试报告、周报与下周计划草案。
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
## 风险评估与应对策略
|
|
|
|
|
- **镜像体积与启动性能**:镜像过大或启动慢 → 采用最小基础镜像与多阶段构建;优化依赖与启动参数。
|
|
|
|
|
- **K8s 环境与清单适配**:本地 K8s 配置差异 → 使用 kind/minikube 标准环境,明确版本与 apiVersion;逐步增加探针与资源约束。
|
|
|
|
|
- **时间管理**:学习与实践并行 → 先确保 Docker/Compose 闭环,K8s 以最小演示为目标,逐步完善。
|
|
|
|
|
|
|
|
|
|
## 学习资源与参考资料
|
|
|
|
|
- Docker 官方文档:https://docs.docker.com/
|
|
|
|
|
- Docker Compose 文档:https://docs.docker.com/compose/
|
|
|
|
|
- Kubernetes 文档:https://kubernetes.io/docs/home/
|
|
|
|
|
- kind 文档:https://kind.sigs.k8s.io/
|
|
|
|
|
- Minikube 文档:https://minikube.sigs.k8s.io/docs/
|
|
|
|
|
- 容器最佳实践(镜像分层/缓存/安全):社区与官方指南
|
|
|
|
|
|
|
|
|
|
## 预期成果与交付物
|
|
|
|
|
|
|
|
|
|
### 主要交付物
|
|
|
|
|
| 类别 | 交付物 | 具体内容 |
|
|
|
|
|
|------|--------|----------|
|
|
|
|
|
| **容器镜像** | Dockerfile 与镜像 | 最小基础镜像、多阶段构建、启动说明 |
|
|
|
|
|
| **本地编排** | docker-compose.yml 与 .env | 多服务编排、环境变量管理、启动/停止脚本 |
|
|
|
|
|
| **K8s 部署** | 清单与部署说明 | Deployment/Service/ConfigMap、探针与资源约束 |
|
|
|
|
|
| **规范与文档** | 容器化规范与部署指南 | 镜像标签、变量约定、验证与联调步骤 |
|
|
|
|
|
| **CI/CD** | 构建与推送脚本/配置 | 本地/平台流水线草案、仓库对接说明 |
|
|
|
|
|
| **验证报告** | 部署与故障注入报告 | 截图/日志/命令记录与问题清单 |
|
|
|
|
|
|
|
|
|
|
### 质量标准
|
|
|
|
|
- 可复现:镜像构建与环境启动稳定可复现
|
|
|
|
|
- 可维护:清单与脚本结构清晰、参数化管理规范
|
|
|
|
|
- 可观测:健康检查与日志/事件可用,资源约束合理
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
**计划制定时间**: 2025-11-17
|
|
|
|
|
**计划执行周期**: 2025-11-17 至 2025-11-23
|
|
|
|
|
**个人目标**: 完成从镜像构建到本地编排与基本 K8s 部署的闭环,形成标准化容器化实践与部署文档输出能力。
|