# 情感博物馆 - 最终部署指南 ## 🎯 项目概述 情感博物馆是一个基于Spring Cloud Alibaba微服务架构的情感AI应用,包含10个微服务模块和Vue前端。 ## 🏗️ 系统架构 ### 后端微服务 (Spring Cloud Alibaba) - **emotion-gateway** (19000) - API网关,统一入口 - **emotion-user** (19001) - 用户管理服务 - **emotion-ai** (19002) - AI聊天服务,集成Coze平台 - **emotion-record** (19003) - 记录管理服务 - **emotion-growth** (19004) - 成长跟踪服务 - **emotion-explore** (19005) - 探索服务 - **emotion-reward** (19006) - 奖励服务 - **emotion-websocket** (19007) - WebSocket实时通信 - **emotion-auth** (19008) - 认证授权服务 - **emotion-stats** (19009) - 统计分析服务 ### 前端 (Vue + Ant Design) - 基于Vue 3 + TypeScript + Ant Design - 响应式设计,支持移动端 - WebSocket实时通信 - 集成AI聊天功能 ### 中间件 - **MySQL 8.0** (3306) - 主数据库 - **Redis 7** (6379) - 缓存和会话存储 - **Nacos 2.2.0** (8848) - 服务注册发现和配置中心 ## 🚀 快速部署 ### 1. 一键部署(推荐) ```bash # 完整部署前后端 ./one-click-deploy.sh # 仅部署后端 ./one-click-deploy.sh backend # 仅部署前端 ./one-click-deploy.sh frontend # 健康检查 ./one-click-deploy.sh check ``` ### 2. 中间件管理 ```bash # 重启中间件(MySQL, Redis, Nacos) ./restart-middleware.sh ``` ### 3. Nginx配置 ```bash # 配置Nginx反向代理 ./setup-nginx.sh ``` ## 📋 分步部署 ### 步骤1: 准备环境 确保本地环境已安装: - Java 17+ - Maven 3.6+ - Node.js 16+ - Docker (远程服务器) ### 步骤2: 启动中间件 ```bash ./restart-middleware.sh ``` ### 步骤3: 构建后端 ```bash cd backend ./build-all.sh ``` ### 步骤4: 部署后端 ```bash cd backend ./deploy-remote.sh ``` ### 步骤5: 部署前端 ```bash cd web-flowith ./deploy.sh ``` ### 步骤6: 配置Nginx ```bash ./setup-nginx.sh ``` ## 🌐 访问地址 ### 生产环境 - **前端应用**: http://47.111.10.27/emotion-museum - **API网关**: http://47.111.10.27/api/ - **WebSocket**: ws://47.111.10.27/ws/ - **健康检查**: http://47.111.10.27/health ### 管理后台 - **Nacos控制台**: http://47.111.10.27:8848/nacos - 用户名: nacos - 密码: Peanut2817*# ### 数据库连接 - **MySQL**: 47.111.10.27:3306 - 用户名: root - 密码: EmotionMuseum2025*# - 数据库: emotion_museum - **Redis**: 47.111.10.27:6379 ## 🔧 运维管理 ### 查看服务状态 ```bash # 查看所有容器 ssh root@47.111.10.27 "docker ps" # 查看特定服务日志 ssh root@47.111.10.27 "docker logs emotion-gateway --tail 50" # 查看服务健康状态 curl http://47.111.10.27:19000/actuator/health ``` ### 重启服务 ```bash # 重启单个服务 ssh root@47.111.10.27 "docker restart emotion-gateway" # 重启所有微服务 ssh root@47.111.10.27 "docker restart \$(docker ps -q --filter name=emotion-)" ``` ### 更新部署 ```bash # 更新后端服务 cd backend && ./deploy-remote.sh # 更新前端 cd web-flowith && ./deploy.sh # 完整更新 ./one-click-deploy.sh ``` ## 📊 监控和日志 ### 应用日志 - 容器日志: `docker logs ` - 应用日志: `/data/logs/emotion-museum/` ### Nginx日志 - 访问日志: `/var/log/nginx/emotion-museum.access.log` - 错误日志: `/var/log/nginx/emotion-museum.error.log` ### 健康检查端点 - 网关: http://47.111.10.27:19000/actuator/health - 用户服务: http://47.111.10.27:19001/actuator/health - AI服务: http://47.111.10.27:19002/actuator/health ## 🛠️ 故障排查 ### 常见问题 #### 1. 服务启动失败 ```bash # 查看容器日志 docker logs --tail 50 # 检查端口占用 netstat -tlnp | grep # 重启服务 docker restart ``` #### 2. 数据库连接失败 ```bash # 检查MySQL状态 docker exec emotion-mysql mysqladmin ping # 检查数据库连接 mysql -h 47.111.10.27 -u root -p ``` #### 3. Nacos连接失败 ```bash # 检查Nacos状态 curl http://47.111.10.27:8848/nacos/v1/console/health # 重启Nacos docker restart emotion-nacos ``` #### 4. 前端访问404 ```bash # 检查Nginx配置 nginx -t # 检查前端文件 ls -la /data/www/emotion-museum/ # 重载Nginx systemctl reload nginx ``` ## 📁 项目结构 ``` emotion-museum/ ├── 📁 backend/ # 后端微服务 ├── 📁 web-flowith/ # 前端Vue项目 ├── 📁 docs/ # 项目文档 ├── 📁 configs/ # 配置文件 ├── 🔧 one-click-deploy.sh # 一键部署脚本 ├── 🔧 restart-middleware.sh # 中间件重启脚本 ├── 🔧 setup-nginx.sh # Nginx配置脚本 └── 📄 DEPLOYMENT_FINAL.md # 部署指南 ``` ## 🔐 安全配置 ### 密码管理 - MySQL root密码: EmotionMuseum2025*# - Nacos密码: Peanut2817*# - 所有密码已在配置文件中统一 ### 网络安全 - 所有服务运行在Docker网络中 - Nginx反向代理保护内部服务 - 仅必要端口对外开放 ## 📞 技术支持 如遇到问题,请: 1. 查看相关日志文件 2. 检查服务健康状态 3. 参考故障排查章节 4. 联系开发团队并提供完整日志 --- **版本**: v2.0 **更新时间**: 2025-07-21 **维护团队**: 情感博物馆开发团队