超超哥AI云计算超哥讲AI 出品

社群入口

AI 超哥 Codex 副业群

扫码加入群聊,一起交流 AI、Codex 与副业实践。

原图注明二维码于10月20日前有效;若提示过期或无法入群,请等待更新二维码。

AI 超哥 Codex 副业群入群二维码在新窗口打开原图

实操任务与综合面试场景

Docker、Nginx 与 Python 项目部署#Python全栈#第十九阶段#Docker、Nginx 与 Python 项目部署#实操任务与综合面试场景约 2181 字 · 6 分钟阅读
追问显示
点击任意追问卡片可收起 / 展开

实操:为题库后端编写并验证一个可独立运行的 Docker 镜像。

追问 怎样组织基础镜像、依赖安装、代码复制、运行身份与启动命令?不挂载开发目录时,如何验证导入、配置检查与健康接口?

实操:使用同一应用镜像分别启动 Web 与报告 Worker。

追问 命令、配置、Broker 连接和文件输出怎样区分?如何证明 Web 请求只提交任务、Worker 正确处理,两个角色各自退出时状态可观察?

实操:用 Compose 组织应用、MySQL、Redis 和 Nginx。

追问 怎样配置服务名称、内部网络、数据卷、就绪条件与公开入口?重建应用后如何验证数据仍保留,数据库不需要对外发布也能被应用访问?

实操:让 Nginx 同时提供前端页面并代理 /api/ 请求。

追问 后端是否保留 /api/ 前缀应怎样约定?如何验证页面刷新、API 错误、静态文件缺失和后端实际路径,避免所有错误都被回退为首页?

实操:部署版本化静态文件和受权限保护的报告下载。

追问 静态产物、媒体卷、应用授权与代理文件访问怎样配合?如何验证新旧页面资源、文件权限,以及他人不能直接读取私有报告?

实操:为测试域名接入 HTTPS,并验证 WebSocket 或 SSE。

追问 证书、代理头、升级或缓冲配置怎样核对?怎样比较直连与代理连接的结果,验证重定向、持续推送和空闲断开行为?

实操:完成一次含数据库迁移的新版本发布与回滚演练。

追问 如何记录旧版本、执行兼容迁移、验证新实例后切换?切回旧应用后怎样检查数据可读性、静态资源和已完成业务,不能只检查容器已启动?

场景:容器显示运行,但首页能打开、接口却 502,怎样定位?

追问 前端静态服务、代理目标、应用监听、容器网络和 Worker 启动怎样分别检查?怎样用实际请求与日志确认故障层,而不是同时修改所有配置?

场景:部署后上传文件丢失、样式旧版、Worker 内存上涨,怎样排查?

追问 持久化挂载、路径权限、缓存头、旧资源保留、Worker 数量和连接池如何核对?怎样分别形成修复与恢复验证记录?

综合实操:交付一套可重建、可发布和可排错的题库部署方案。

追问 要求包含前后端、数据库、缓存、报告 Worker、Nginx、持久化、配置注入与业务验证;怎样交付镜像、Compose、代理配置、启动说明、迁移流程、回滚条件及故障记录,并演示应用容器重建后业务仍可恢复?

面试评分参考

每题可按 0~3 分评价:

  • 0 分: 无法说明部署链路,启动、网络或文件配置存在根本错误,或重建过程中丢失必须保留的数据。
  • 1 分: 能执行常见命令并启动正常路径,但缺少配置生效、就绪、持久化和失败恢复的理解。
  • 2 分: 能完成镜像与多服务部署,正确配置代理、文件和进程,依据日志定位常见故障,并验证业务读写。
  • 3 分: 能分析版本、路径、信号与资源边界,控制迁移和回滚条件,复现跨组件故障,并提供可执行交付与恢复证据。

重点观察:

  1. 链路与边界: 是否分清宿主机、容器、代理和应用,明确监听地址、服务端口与公开入口。
  2. 构建与配置: 是否能够在干净环境重建镜像,区分构建时与运行时设置,跟踪实际版本并合理注入配置。
  3. 数据与资源: 是否明确卷、文件权限、持久化和恢复条件,考虑 CPU 配额、Worker 内存与连接池总量。
  4. 代理与进程: 是否处理路径、头部、超时、静态与长连接,理解前台进程、信号和优雅退出。
  5. 发布与排错: 是否以业务验证判断上线成功,说明迁移兼容与回滚边界,用证据定位故障而不是反复重启。

使用建议: 分数用于课堂诊断和同组比较,不直接对应薪资或录用结论。优先完成单应用镜像、Compose 内部访问与 Nginx 接入;HTTPS、长连接、进程调优和兼容迁移作为渐进训练,不以命令参数记忆或未经验证的“零停机”承诺作为验收标准。

课堂练习与组卷建议

  • 基础口试: 部署模型 2 题、镜像与容器 3 题、网络与持久化 2 题、代理与进程 3 题,要求说明实际连接关系与配置生效方式。
  • 镜像练习: 完成 91~92 题,在干净容器中验证 Web 与 Worker;不允许依靠手工进入容器安装缺失依赖完成验收。
  • 多服务练习: 完成 93 题,记录最终配置与内部访问结果;停止并重建应用后检查业务记录和报告文件,明确卷删除的影响。
  • 代理练习: 完成 94 题,测试前端子路径刷新、正常 API、未知 API 与不存在的静态资源,确认每类请求的目标和响应内容。
  • 文件练习: 完成 95 题,记录路径映射、读写身份和缓存规则;使用不同账号验证私有文件,不把文件存在等同于访问正确。
  • 连接练习: 完成 96 题,在测试域名或本地证书环境验证;注明证书信任范围,记录升级、推送、超时和断开行为。
  • 发布练习: 完成 97 题,先保存版本与兼容条件,再验证迁移、切换和回滚;保留完整业务检查结果,而不是只有命令截图。
  • 排错练习: 从 98~99 题选 1 题,在隔离环境构造错误端口、挂载或资源设置,交付请求路径、证据、修复与恢复记录。
  • 模拟面试: 基础题 4 题、部署流程 3 题、排错与设计 3 题、实操 1 题;建议口试 40~50 分钟,模块实操 90~120 分钟,综合部署可安排 1~2 天。
  • 验收材料: 项目版本、Dockerfile、镜像引用、Compose 文件、Nginx 配置、配置示例、秘密注入方式、网络与卷清单、启动迁移步骤、业务验证、回滚条件与故障记录;注明实际依赖版本及运行架构。

下一阶段: CI/CD、云服务器与生产运维,学习自动化构建测试、镜像发布、部署流水线、云资源与访问控制、监控告警、备份恢复和故障处理。