feat: 增加通知系统、RabbitMQ集成及Docker一键部署脚本
All checks were successful
test/timeline-server/pipeline/head This commit looks good
All checks were successful
test/timeline-server/pipeline/head This commit looks good
1. 新增通知中心功能,支持好友请求、评论、点赞等多种通知类型的持久化与推送 2. 集成 RabbitMQ 用于异步处理动态日志,解耦动态服务与日志记录逻辑 3. 提供完整的 Docker Compose 部署方案及一键启动/停止脚本(Shell/Bat) 4. 优化文件服务,增加图片上传时的自动压缩处理以节省存储空间 5. 增强动态服务,支持通过 shareId 公开访问动态项及关键词搜索功能 6. 完善代码健壮性,在关键业务 Service 层增加 @Transactional 事务控制
This commit is contained in:
151
deploy/README.md
Normal file
151
deploy/README.md
Normal file
@@ -0,0 +1,151 @@
|
||||
# 部署指南
|
||||
|
||||
本目录包含部署 Timeline 系统所需的所有脚本和配置文件。
|
||||
|
||||
## 目录结构
|
||||
|
||||
```
|
||||
deploy/
|
||||
├── conf/ # 配置文件目录
|
||||
│ ├── my.cnf # MySQL 配置 (开发环境)
|
||||
│ ├── my-container.cnf # MySQL 配置 (容器化环境)
|
||||
│ ├── redis.conf # Redis 配置 (开发环境)
|
||||
│ ├── redis-container.conf # Redis 配置 (容器化环境)
|
||||
│ └── minio-config/ # MinIO 配置目录
|
||||
├── docker-compose-all.yml # 统一部署文件 (包含所有服务)
|
||||
├── docker-compose.yml # Nacos 单独部署文件
|
||||
├── docker-compose-nacos-shared-db.yml # Nacos 共享数据库部署文件
|
||||
├── deploy-all.sh # Linux/macOS 统一部署脚本
|
||||
├── deploy-all.bat # Windows 统一部署脚本
|
||||
├── stop-all.sh # Linux/macOS 停止服务脚本
|
||||
├── stop-all.bat # Windows 停止服务脚本
|
||||
├── start-mysql.sh # 单独启动 MySQL
|
||||
├── start-minio.sh # 单独启动 MinIO
|
||||
└── start.sh # 单独启动 Redis
|
||||
```
|
||||
|
||||
## 部署选项
|
||||
|
||||
### 1. 完整部署 (推荐)
|
||||
|
||||
完整部署所有服务(MySQL、Redis、MinIO、Nacos 和所有微服务):
|
||||
|
||||
**Linux/macOS:**
|
||||
```bash
|
||||
./deploy-all.sh
|
||||
```
|
||||
|
||||
**Windows:**
|
||||
```cmd
|
||||
deploy-all.bat
|
||||
```
|
||||
|
||||
### 2. 使用共享数据库部署 Nacos
|
||||
|
||||
如果要使用共享数据库部署Nacos(与其它服务使用同一数据库):
|
||||
|
||||
```bash
|
||||
# 启动仅Nacos服务(使用共享数据库)
|
||||
docker-compose -f docker-compose-nacos-shared-db.yml up -d
|
||||
|
||||
# 或者使用项目根目录的部署文件
|
||||
docker-compose -f ../docker-compose-nacos-shared-db.yml up -d
|
||||
```
|
||||
|
||||
### 3. 单独部署 Nacos
|
||||
|
||||
如果只需要部署 Nacos 服务:
|
||||
|
||||
**Linux/macOS:**
|
||||
```bash
|
||||
docker compose -f docker-compose.yml up -d
|
||||
```
|
||||
|
||||
**Windows:**
|
||||
```cmd
|
||||
docker compose -f docker-compose.yml up -d
|
||||
```
|
||||
|
||||
### 4. 单独启动中间件
|
||||
|
||||
如果需要单独启动某个中间件服务:
|
||||
|
||||
**启动 MySQL:**
|
||||
```bash
|
||||
./start-mysql.sh
|
||||
```
|
||||
|
||||
**启动 MinIO:**
|
||||
```bash
|
||||
./start-minio.sh
|
||||
```
|
||||
|
||||
**启动 Redis:**
|
||||
```bash
|
||||
./start.sh
|
||||
```
|
||||
|
||||
## 停止服务
|
||||
|
||||
**Linux/macOS:**
|
||||
```bash
|
||||
./stop-all.sh
|
||||
```
|
||||
|
||||
**Windows:**
|
||||
```cmd
|
||||
stop-all.bat
|
||||
```
|
||||
|
||||
## 服务端口映射
|
||||
|
||||
| 服务 | 端口 | 访问地址 |
|
||||
|------|------|----------|
|
||||
| Nacos | 8848 | http://127.0.0.1:8848/nacos |
|
||||
| Gateway | 30000 | http://127.0.0.1:30000 |
|
||||
| Story Service | 30001 | http://127.0.0.1:30001 |
|
||||
| File Service | 30002 | http://127.0.0.1:30002 |
|
||||
| User Service | 30003 | http://127.0.0.1:30003 |
|
||||
| MySQL | 33306 | 127.0.0.1:33306 |
|
||||
| Redis | 36379 | 127.0.0.1:36379 |
|
||||
| MinIO | 9000 | http://127.0.0.1:9000 |
|
||||
| MinIO Console | 9090 | http://127.0.0.1:9090 |
|
||||
|
||||
## 默认凭据
|
||||
|
||||
| 服务 | 用户名 | 密码 |
|
||||
|------|--------|------|
|
||||
| Nacos | nacos | nacos |
|
||||
| MySQL Root | root | WoCloud@9ol7uj |
|
||||
| Redis | - | 123456 |
|
||||
| MinIO Root | minioadmin | WoCloud@9ol7uj |
|
||||
|
||||
## 注意事项
|
||||
|
||||
1. 确保 Docker 和 Docker Compose 已安装并正在运行
|
||||
2. 确保有足够的系统资源(推荐至少 4GB 内存)
|
||||
3. 确保以下端口未被占用:8848, 30000-30003, 33306, 36379, 9000, 9090
|
||||
4. 首次启动需要等待约 1-2 分钟,等待所有服务完全启动
|
||||
5. 确保MySQL数据库服务器(59.80.22.43:33306)可访问,并且nacos_config数据库已创建
|
||||
|
||||
## 故障排除
|
||||
|
||||
### 服务启动失败
|
||||
- 检查端口是否被占用
|
||||
- 检查 Docker 是否有足够的资源
|
||||
- 查看服务日志:`docker compose -f docker-compose-all.yml logs <service_name>`
|
||||
|
||||
### Nacos 无法启动
|
||||
- 检查MySQL数据库连接:确认数据库服务器可访问,凭据正确,nacos_config数据库存在
|
||||
- 检查 [nacos-config/application.properties](file:///D:/workspaces/timeline-server/nacos-config/application.properties) 配置文件中的数据库连接设置
|
||||
|
||||
### Nacos 无法连接数据库
|
||||
- 确认 MySQL 服务已启动
|
||||
- 检查网络连接是否正常
|
||||
- 确认数据库凭据是否正确
|
||||
- 确认 nacos_config 数据库已创建
|
||||
|
||||
### 微服务无法注册到 Nacos
|
||||
- 确认 Nacos 服务已启动并正常运行
|
||||
- 检查服务间的网络连接
|
||||
- 确认服务配置中的 Nacos 地址是否正确
|
||||
Reference in New Issue
Block a user