zhibo/服务管理指南.md
2026-01-03 12:24:05 +08:00

229 lines
4.4 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.

# 直播系统服务管理指南
## 📍 服务器信息
- **IP地址**: 1.15.149.240
- **SSH登录**: `ssh root@1.15.149.240`
---
## 🗂️ 服务清单
| 服务 | 端口 | 部署位置 | 说明 |
|------|------|----------|------|
| Admin API | 30003 | /opt/zhibo/admin-api | 管理后台API |
| Front API | 8083 | /opt/zhibo/front-api | APP端API |
| Admin Web | 30002 | /opt/zhibo/admin-web | 管理后台网页 |
| SRS 直播 | 25002/25003 | Docker | RTMP推流/HTTP拉流 |
| TURN 服务 | 3478 | Docker | WebRTC中继 |
---
## 🔧 一、Java 后端服务管理
### 登录服务器
```bash
ssh root@1.15.149.240
```
### 查看服务状态
```bash
# 查看所有Java进程
ps aux | grep -E "Crmeb-admin|Crmeb-front"
# 查看端口占用
netstat -tlnp | grep -E "30003|8083"
```
### 停止服务
```bash
# 停止 Admin API
pkill -f "Crmeb-admin.jar"
# 停止 Front API
pkill -f "Crmeb-front.jar"
# 或者一键停止
/opt/zhibo/scripts/stop-all.sh
```
### 启动服务
```bash
# 一键启动所有服务
/opt/zhibo/scripts/start-all.sh
# 或者单独启动
/opt/zhibo/scripts/start-admin-api.sh
/opt/zhibo/scripts/start-front-api.sh
```
### 查看日志
```bash
# Admin API 日志
tail -100f /opt/zhibo/logs/admin-api.log
# Front API 日志
tail -100f /opt/zhibo/logs/front-api.log
```
---
## 🎬 二、SRS 直播服务管理
### 查看 SRS 状态
```bash
# 查看 Docker 容器状态
docker ps | grep srs
# 查看 SRS 日志
docker logs srs-server --tail 100
```
### 停止 SRS
```bash
# 方法1: 使用 docker-compose如果有
cd /opt/live-streaming # 或者 SRS 部署目录
docker-compose down
# 方法2: 直接停止容器
docker stop srs-server
docker rm srs-server
```
### 启动 SRS
```bash
# 方法1: 使用 docker-compose
cd /opt/live-streaming
docker-compose up -d
# 方法2: 直接运行
docker run -d --name srs-server \
-p 25002:1935 \
-p 25003:8080 \
-p 1985:1985 \
-v /opt/live-streaming/docker/srs/srs.conf:/usr/local/srs/conf/srs.conf \
ossrs/srs:5
```
### 重启 SRS应用新配置
```bash
docker restart srs-server
```
---
## 🔄 三、完整重新部署流程
### 步骤 1: 停止所有服务
```bash
ssh root@1.15.149.240
# 停止 Java 服务
pkill -f "Crmeb-admin.jar"
pkill -f "Crmeb-front.jar"
# 停止 SRS
docker stop srs-server 2>/dev/null
docker rm srs-server 2>/dev/null
```
### 步骤 2: 上传新文件(在本地执行)
```bash
# 上传 Java JAR 包
scp Zhibo/zhibo-h/crmeb-admin/target/Crmeb-admin.jar root@1.15.149.240:/opt/zhibo/admin-api/
scp Zhibo/zhibo-h/crmeb-front/target/Crmeb-front.jar root@1.15.149.240:/opt/zhibo/front-api/
# 上传 SRS 配置
scp live-streaming/docker/srs/srs.conf root@1.15.149.240:/opt/live-streaming/docker/srs/
```
### 步骤 3: 启动所有服务
```bash
ssh root@1.15.149.240
# 启动 Java 服务
/opt/zhibo/scripts/start-all.sh
# 启动 SRS
cd /opt/live-streaming
docker-compose up -d
```
### 步骤 4: 验证服务
```bash
# 检查端口
netstat -tlnp | grep -E "30003|8083|25002|25003"
# 测试 API
curl http://localhost:8083/api/front/index
curl http://localhost:30003/api/admin/version
# 测试 SRS
curl http://localhost:1985/api/v1/versions
```
---
## 🚨 四、常见问题排查
### 服务启动失败
```bash
# 查看详细日志
cat /opt/zhibo/logs/admin-api.log
cat /opt/zhibo/logs/front-api.log
# 检查 Java 版本
java -version
# 检查 Redis 是否运行
redis-cli ping
```
### 端口被占用
```bash
# 查看端口占用
lsof -i :8083
lsof -i :30003
# 杀掉占用进程
kill -9 <PID>
```
### SRS 无法推流
```bash
# 检查防火墙
firewall-cmd --list-ports
# 开放端口
firewall-cmd --add-port=25002/tcp --permanent
firewall-cmd --add-port=25003/tcp --permanent
firewall-cmd --reload
```
---
## 📱 五、Android APP 配置
APP 连接的服务器地址配置在 `android-app/local.properties`:
```properties
api.base_url_emulator=http://1.15.149.240:8083/
api.base_url_device=http://1.15.149.240:8083/
live.server_host=1.15.149.240
live.server_port=8083
```
修改后需要重新编译 APK。
---
## 📋 六、快速命令参考
| 操作 | 命令 |
|------|------|
| 登录服务器 | `ssh root@1.15.149.240` |
| 查看所有服务 | `ps aux \| grep -E "Crmeb\|srs"` |
| 停止所有 Java | `pkill -f "Crmeb"` |
| 启动所有 Java | `/opt/zhibo/scripts/start-all.sh` |
| 查看 SRS 日志 | `docker logs srs-server --tail 50` |
| 重启 SRS | `docker restart srs-server` |
| 查看端口 | `netstat -tlnp \| grep -E "8083\|30003\|25002\|25003"` |