Files
timeline-server/deploy/README.md
jianghao 482c32a59c
All checks were successful
test/timeline-server/pipeline/head This commit looks good
feat: 增加通知系统、RabbitMQ集成及Docker一键部署脚本
1. 新增通知中心功能,支持好友请求、评论、点赞等多种通知类型的持久化与推送
2. 集成 RabbitMQ 用于异步处理动态日志,解耦动态服务与日志记录逻辑
3. 提供完整的 Docker Compose 部署方案及一键启动/停止脚本(Shell/Bat)
4. 优化文件服务,增加图片上传时的自动压缩处理以节省存储空间
5. 增强动态服务,支持通过 shareId 公开访问动态项及关键词搜索功能
6. 完善代码健壮性,在关键业务 Service 层增加 @Transactional 事务控制
2026-02-11 14:28:27 +08:00

151 lines
4.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 部署指南
本目录包含部署 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 地址是否正确