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 事务控制
151 lines
4.1 KiB
Markdown
151 lines
4.1 KiB
Markdown
# 部署指南
|
||
|
||
本目录包含部署 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 地址是否正确 |