20 分钟
工程化

项目部署基础

了解 Docker 和云部署概念

  • 理解容器化概念
  • 编写 Dockerfile
  • 了解CI/CD流程

Docker 概念

示例代码(可运行)

CI/CD 概念

示例代码(可运行)

项目架构原则

Python
print("""项目结构最佳实践:
myproject/
├── src/              # 源代码
│   ├── __init__.py
│   ├── models/       # 数据模型
│   ├── services/     # 业务逻辑
│   ├── api/          # 接口层
│   └── utils/        # 工具函数
├── tests/            # 测试
├── docs/             # 文档
├── requirements.txt  # 依赖
├── Dockerfile
├── docker-compose.yml
├── .env.example      # 环境变量模板
├── .gitignore
└── README.md

架构原则:
1. 单一职责:每个模块只做一件事
2. 关注点分离:数据/逻辑/展示分层
3. DRY:不要重复自己
4. 依赖注入:便于测试和替换
5. 配置与代码分离:用环境变量""")
预测输出
print("docker build -t myapp ."[-1])
填空题填写空白处的代码
FROM python:3.12- # 轻量基础镜像
选择题

CI/CD中CI代表?

资深工程师加餐

底层原理 · 大厂视角 · 工程经验,点卡片展开

底层是大量、快速、稳定的单元测试(优先覆盖纯函数与边界/异常路径),中间是少量集成测试(验证模块协作),顶端是少量端到端测试(慢且脆)。测试最大的价值是当「安全网」:有它你才敢放心重构。没测试兜底的重构,本质是在赌博。写用例先想正常、边界、异常三类。

挑战任务

部署挑战

简单+50 XP

为Flask应用编写Dockerfile。

部署挑战
2 个测试用例

课后作业

docker-compose

中等+20 XP

编写包含app和redis的docker-compose。

docker-compose
1 个测试用例