- 添加 Dockerfile 与多套 docker-compose 配置(开发/生产环境) - 集成 Laravel Octane (Swoole) 提升性能 - 新增健康检查、监控脚本及部署文档 - 新增 Docker 镜像离线导入包(MySQL/Redis/Meilisearch) - 优化文档转换、预览服务及队列任务 - 添加 CreateAdminUser 命令与路由健康检查接口 - 新增 Swoole 队列兼容性测试套件 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
4.8 KiB
4.8 KiB
Docker部署实施计划
-
1. 创建Docker镜像构建配置
- 创建多阶段Dockerfile,优化镜像大小
- 配置PHP 8.2-fpm基础环境和必需扩展
- 安装Composer依赖和NPM构建工具
- 集成Nginx Web服务器配置
- 安装Pandoc文档转换工具
- 确保构建为linux/amd64架构
- 需求: 1.1, 1.2, 1.3, 1.4, 1.5, 1.6
-
* 1.1 编写属性测试验证镜像架构
- 属性1: 镜像架构一致性
- 验证: 需求 1.1
-
* 1.2 编写属性测试验证PHP环境
- 属性2: PHP环境完整性
- 验证: 需求 1.2
-
* 1.3 编写属性测试验证构建产物
- 属性3: 构建产物存在性
- 验证: 需求 1.3
-
2. 配置生产环境容器编排
- 创建生产环境docker-compose.yml文件
- 配置MySQL数据库服务和持久化存储
- 配置Redis缓存服务和内存限制
- 配置Meilisearch搜索引擎和数据持久化
- 配置Laravel应用容器和队列处理容器
- 设置服务间依赖关系和启动顺序
- 需求: 2.1, 2.2, 2.3, 2.4, 2.5
-
* 2.1 编写属性测试验证服务启动
- 属性4: 服务启动一致性
- 验证: 需求 2.1, 2.2, 2.3, 2.4, 2.5
-
3. 实现数据持久化和目录映射
- 配置项目代码目录映射到容器
- 设置上传文档存储目录持久化
- 配置数据库数据目录持久化
- 设置搜索引擎数据目录持久化
- 配置日志目录映射到宿主机
- 需求: 3.1, 3.2, 3.3, 3.4, 3.5
-
* 3.1 编写属性测试验证数据持久化
- 属性5: 数据持久化保证
- 验证: 需求 3.2, 3.3, 3.4
-
4. 配置环境变量和网络设置
- 创建专用Docker网络配置
- 设置数据库连接环境变量
- 配置Redis连接参数
- 设置Meilisearch连接参数
- 配置应用密钥和运行模式
- 需求: 4.1, 4.2, 4.3, 4.4, 4.5
-
* 4.1 编写属性测试验证服务连接
- 属性6: 服务连接性
- 验证: 需求 4.2, 4.3, 4.4
-
5. 实现健康检查和自动重启机制
- 配置Web应用HTTP健康检查
- 实现数据库连接健康检查
- 配置Redis连接健康检查
- 设置Meilisearch API健康检查
- 配置容器自动重启策略
- 需求: 5.1, 5.2, 5.3, 5.4, 5.5
-
* 5.1 编写属性测试验证健康检查
- 属性7: 健康检查响应性
- 验证: 需求 5.1, 5.2, 5.3, 5.4
-
* 5.2 编写属性测试验证自动重启
- 属性8: 容器自愈能力
- 验证: 需求 5.5
-
6. 创建镜像打包和部署脚本
- 编写Docker镜像导出脚本
- 实现镜像压缩和完整性检查
- 创建OpenEuler服务器部署脚本
- 编写镜像导入和验证脚本
- 生成详细的部署文档
- 需求: 6.1, 6.2, 6.3, 6.4, 6.5
-
* 6.1 编写属性测试验证镜像导出
- 属性9: 镜像导出完整性
- 验证: 需求 6.1
-
* 6.2 编写属性测试验证镜像导入
- 属性10: 镜像导入兼容性
- 验证: 需求 6.2
-
* 6.3 编写属性测试验证压缩效率
- 属性11: 压缩效率
- 验证: 需求 6.3
-
* 6.4 编写属性测试验证完整性检查
- 属性12: 完整性验证
- 验证: 需求 6.4
-
7. 配置开发环境支持
- 创建开发环境docker-compose.dev.yml
- 配置代码热重载功能
- 启用调试模式和详细日志
- 设置开发工具和测试数据
- 配置端口映射供调试使用
- 需求: 7.1, 7.2, 7.3, 7.4, 7.5
-
* 7.1 编写属性测试验证热重载
- 属性13: 开发环境热重载
- 验证: 需求 7.1
-
8. 创建Nginx配置文件
- 编写生产环境Nginx配置
- 配置PHP-FPM upstream
- 设置静态文件服务
- 配置日志格式和路径
- 优化性能参数
- 需求: 1.4
-
9. 编写环境配置模板
- 创建生产环境.env模板
- 创建开发环境.env模板
- 配置数据库连接参数
- 设置缓存和搜索服务配置
- 添加配置说明文档
- 需求: 4.2, 4.3, 4.4, 4.5
-
10. 实现启动和管理脚本
- 编写一键启动脚本
- 创建服务状态检查脚本
- 实现日志查看脚本
- 编写数据备份脚本
- 创建清理和重置脚本
- 需求: 2.1, 2.2, 2.3, 2.4, 2.5
-
11. 第一次检查点 - 确保所有测试通过
- 确保所有测试通过,如有问题请询问用户
-
12. 创建部署文档
- 编写OpenEuler服务器环境准备指南
- 创建Docker安装和配置文档
- 编写应用部署步骤说明
- 添加故障排除指南
- 创建运维管理文档
- 需求: 6.5
-
13. 优化和安全配置
- 配置容器安全策略
- 设置资源限制和配额
- 实现日志轮转和清理
- 配置网络安全规则
- 添加监控和告警配置
- 需求: 2.2, 5.1, 5.2, 5.3, 5.4
-
14. 最终检查点 - 确保所有测试通过
- 确保所有测试通过,如有问题请询问用户