提交 106f67a1 authored 作者: 陈泽健's avatar 陈泽健

docs(maintenance): 添加运维维护手册及相关文档

- 新增运维维护手册大纲文档
- 添加新统一平台运维维护手册完整内容
- 创建服务自检报告模板文档
- 更新自动化部署脚本日志路径配置
- 添加对openEuler 24.03系统版本的支持
- 重构Docker容器启动参数配置结构
- 增加端口映射数量以满足新功能需求
- 优化容器启动命令参数传递方式
上级 ebcc1dab
# 新统一平台运维维护手册
## 文档信息
| 项目 | 内容 |
|------|------|
| 文档名称 | 新统一平台运维维护手册 |
| 文档版本 | v1.0 |
| 创建日期 | 2026-03-30 |
| 文档用途 | 现场问题处理运维操作指导 |
---
## 一、日常运维操作
### 1.1 服务状态检查
- [ ] 服务运行状态查看
- [ ] 端口连通性检查
- [ ] 进程状态确认
- [ ] 日志快速定位
### 1.2 日志管理
- [ ] 日志存储位置说明
- [ ] 常用日志查看命令
- [ ] 日志筛选技巧
- [ ] 日志分析要点
### 1.3 数据备份
- [ ] 备份操作步骤
- [ ] 备份文件存储
- [ ] 恢复操作指南
- [ ] 备份验证方法
---
## 二、故障处理流程
### 2.1 故障处理标准流程
```
问题接收 → 信息收集 → 问题定位 → 处理方案 → 实施修复 → 验证确认 → 记录归档
```
### 2.2 常见故障分类处理
#### 2.2.1 服务类故障
| 故障现象 | 可能原因 | 排查步骤 | 解决方案 |
|----------|----------|----------|----------|
| 服务无法启动 | 配置错误/端口占用 | 检查配置文件/检查端口 | 修正配置/释放端口 |
| 服务响应超时 | 资源不足/网络问题 | 检查CPU/内存/网络 | 扩容/优化/检查网络 |
| 服务频繁重启 | 异常崩溃/资源泄漏 | 查看崩溃日志 | 修复bug/增加资源 |
#### 2.2.2 网络类故障
| 故障现象 | 可能原因 | 排查步骤 | 解决方案 |
|----------|----------|----------|----------|
| 连接超时 | 防火墙/网络不通 | ping/telnet测试 | 放通端口/检查网络 |
| 端口占用 | 进程未正常退出 | netstat/ss查看 | 杀死占用进程 |
| 请求失败 | 证书过期/配置错误 | 检查证书/配置 | 更新证书/修正配置 |
#### 2.2.3 数据库故障
| 故障现象 | 可能原因 | 排查步骤 | 解决方案 |
|----------|----------|----------|----------|
| 连接失败 | 服务未启/密码错误 | 检查服务/验证密码 | 启动服务/更新密码 |
| 查询慢 | 索引缺失/数据量大 | explain分析 | 添加索引/优化SQL |
| 死锁问题 | 事务冲突 | 查看锁信息 | 回滚事务/优化逻辑 |
#### 2.2.4 MQTT故障
| 故障现象 | 可能原因 | 排查步骤 | 解决方案 |
|----------|----------|----------|----------|
| 连接断开 | 网络波动/认证失败 | 检查网络/凭证 | 重连/更新凭证 |
| 消息发送失败 | Topic错误/权限不足 | 检查Topic/权限 | 修正Topic/授权 |
| 订阅异常 | QoS不匹配/格式错误 | 检查订阅参数 | 调整QoS/修正格式 |
### 2.3 应急快速响应
- [ ] 一键重启命令
- [ ] 快速回滚方案
- [ ] 临时规避措施
- [ ] 紧急联系人
---
## 三、专项维护操作
### 3.1 服务自检工具使用
- [ ] PowerShell自检脚本执行
- [ ] 自检项目配置
- [ ] 自检报告解读
- [ ] 自检计划设置
**检查项目清单:**
| 检查项 | 检查内容 | 正常状态 |
|--------|----------|----------|
| 服务状态 | 各服务是否运行 | 运行中 |
| 中间件 | Redis/RabbitMQ等 | 正常 |
| 容器 | Docker容器状态 | Up |
| 数据库 | 连接可用性 | 连接成功 |
| 磁盘空间 | 剩余空间使用率 | <80% |
| CPU/内存 | 资源使用率 | <80% |
### 3.2 MQTT消息服务维护
- [ ] MQTT客户端连接测试
- [ ] Topic订阅/发布验证
- [ ] 消息内容格式检查
- [ ] 设备模拟测试
### 3.3 移动端自动化维护
- [ ] Appium服务状态检查
- [ ] ADB设备连接管理
- [ ] 移动设备状态查看
- [ ] 应用安装/卸载操作
### 3.4 远程部署维护
- [ ] SSH连接配置
- [ ] 远程更新脚本使用
- [ ] 远程日志查看
- [ ] 远程服务操作
---
## 四、管理规范
### 4.1 权限管理
| 角色 | 权限范围 | 操作限制 |
|------|----------|----------|
| 管理员 | 全部操作 | 无限制 |
| 运维人员 | 服务/日志操作 | 需审批关键操作 |
| 只读人员 | 日志查看 | 仅查看权限 |
### 4.2 变更管理
- [ ] 变更申请流程
- [ ] 变更审批机制
- [ ] 变更实施步骤
- [ ] 变更回滚预案
### 4.3 问题记录规范
- [ ] 问题描述模板
- [ ] 处理过程记录
- [ ] 解决方案归档
- [ ] 知识沉淀要求
### 4.4 文档更新记录
| 版本 | 日期 | 修改人 | 修改内容 |
|------|------|--------|----------|
| v1.0 | 2026-03-30 | - | 初始版本 |
| - | - | - | - |
---
## 五、附录
### 5.1 常用命令速查
#### 服务管理
```bash
# 查看服务状态
systemctl status <service>
# 启动/停止/重启服务
systemctl start/stop/restart <service>
# 查看进程
ps -ef | grep <process>
ps aux | grep <process>
# 结束进程
kill -9 <pid>
```
#### 日志查看
```bash
# 实时查看日志
tail -f <log_file>
# 查看最后n行
tail -n <number> <log_file>
# 搜索关键字
grep "keyword" <log_file>
grep -C 10 "keyword" <log_file> # 上下10行
# 查看错误日志
grep -i "error\|exception" <log_file>
```
#### 网络诊断
```bash
# 测试连通性
ping <host>
# 测试端口
telnet <host> <port>
nc -zv <host> <port>
# 查看端口占用
netstat -tulnp | grep <port>
ss -tulnp | grep <port>
```
#### 系统资源
```bash
# 查看磁盘空间
df -h
# 查看内存使用
free -h
# 查看CPU使用
top
htop
# 查看系统负载
uptime
```
#### Python相关
```bash
# 运行hytest测试
hytest --report_title "报告名称" --test <测试模块>
hytest --report_title "报告名称" --tag <标签>
# 查看Python版本
python --version
# 安装依赖
pip install <package>
```
#### 移动设备
```bash
# 查看连接设备
adb devices
# 连接设备
adb connect <ip>:5555
# 断开设备
adb disconnect <ip>
# 查看日志
adb logcat
```
### 5.2 常见问题FAQ
| 问题 | 解决方案 |
|------|----------|
| ChromeDriver版本不匹配 | 下载对应版本ChromeDriver并更新路径 |
| 元素定位失败 | 检查页面是否加载完成,更新定位器 |
| ADB连接断开 | 重新执行adb connect命令 |
| 测试报告无法访问 | 检查ngrok服务状态,重启映射 |
| 钉钉通知未发送 | 检查webhook配置和网络连接 |
### 5.3 联系方式
| 角色 | 联系方式 | 负责范围 |
|------|----------|----------|
| 运维负责人 | - | 全系统问题 |
| 开发负责人 | - | 功能缺陷/代码问题 |
| 数据库DBA | - | 数据库问题 |
| 网络管理员 | - | 网络连接问题 |
### 5.4 相关文档链接
- 代码规范: `Docs/PRD/01规范文档/_PRD_规范文档_代码规范.md`
- 问题总结: `Docs/PRD/01规范文档/_PRD_问题总结_记录文档.md`
- 方法总结: `Docs/PRD/01规范文档/_PRD_方法总结_记录文档.md`
- 文档规范: `Docs/PRD/01规范文档/_PRD_规范文档_文档规范.md`
- 测试规范: `Docs/PRD/01规范文档/_PRD_规范文档_测试规范.md`
---
## 优化功能回填
> 本章节用于记录手册使用过程中发现的优化点和改进措施
| 日期 | 优化项 | 状态 | 备注 |
|------|--------|------|------|
| - | - | - | - |
# 运维维护手册
## 功能需求
### 功能目标
**目标:** 提供一份标准的运维维护手册大纲
### 需求描述
- 我需要一份系统运维维护手册大纲,后续我要用于新统一平台的使用。
## 规范文档
- 代码规范: `Docs/PRD/01规范文档/_PRD_规范文档_代码规范.md`
- 问题总结: `Docs/PRD/01规范文档/_PRD_问题总结_记录文档.md`
- 方法总结: `Docs/PRD/01规范文档/_PRD_方法总结_记录文档.md`
- 文档规范: `Docs/PRD/01规范文档/_PRD_规范文档_文档规范.md`
- 测试规范: `Docs/PRD/01规范文档/_PRD_规范文档_测试规范.md`
---
\ No newline at end of file
# 新统一平台运维维护手册
## 文档信息
| 文档名称 | 新统一平台运维维护手册 |
| --- | --- |
| 文档版本 | v1.0 |
| 创建日期 | 2026-03-30 |
| 文档用途 | 现场问题处理运维操作指导 |
---
## 一、日常运维操作
### 1.1 服务自检脚本运行
从网盘路径[\\192.168.9.9\发布版本\10辅助工具箱\现场排查]获取最新的服务自检工具,根据现场环境选择使用"Windows"或是"Linux"版本。
<!-- 这是一张图片,ocr 内容为:发布版本 现场排查 网络 192.168.9.9 10辅助工具箱 三查看 仆排序 类型 大小 修改日期 名称 文件夹 2026/2/416:39 LINUX 文件夹 2026/2/416:37 WINDOW -->
![](https://cdn.nlark.com/yuque/0/2026/png/35480611/1774836045838-f74968fa-2f62-45f9-84f7-2aefb7838fd1.png)
根据服务自检操作手册执行服务自检脚本,等待服务自检脚本执行完成后,查阅服务自检报告,检查是否存在检测异常项。
<!-- 这是一张图片,ocr 内容为:服务器描述:标准版预定运维测试发布服务器 平台类型:传统平台 检测时间:2026-02-24 14:04:09 系统类型识别 会议预定系统(UJAVA):已部署[UJAVA6] 运维集控系统(UPYTHON):已部署[UPYTHON1] UJAVA容器内服务状态 NGINX(NGINX:MASTER PROCESS):运行中 MEETING(UBAINS-MEETING-INNER-API-1.0-SNAPSHOT,JAR):运行中 UJAVA宿主机服务状态 EXTAPI(UBAINS-MEETING-API-1.0-SNAPSHOT.JAR):运行中 UPYTHON容器服务状态 端口 8081(NGINX 代理服务(8081)):运行中 端口8443(NGINX HTTPS 服务(8443)):运行中 端口8000(UWSGI应用服务):运行中 端口8002(APACHE HTTPD 服务):运行中 端口 11211(MEMCACHED 缓冲服务):运行中 DNS解析检测结果 IDNS配置:正常.DNS服务器:114.114.114.114.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8. DNS解析:正常,测试域名解析:0/0成功 IDNS修复:已执行,远程脚本执行成功(FIX DNS.CONFIG)|复检成功(WWW.BAIDU.COM) -->
![](https://cdn.nlark.com/yuque/0/2026/png/35480611/1774836293484-cd107c45-6923-44bc-9b39-7aec8cbe4deb.png)
---
| 检测项 | 是否支持自动修复 |
| --- | --- |
| 系统类型识别 | 否 |
| ujava容器内服务状态 (nginx/meeting) | 否 |
| ujava宿主机服务状态 (extapi) | 否 |
| upython容器服务状态 (8081/8443/8000/8002/11211端口) | 否 |
| DNS解析检测 | 是 |
| 服务器资源分析 (CPU/内存/磁盘) | 否 |
| 防火墙状态检测 | 否 |
| NTP时间同步检测 | 是 |
| 文件权限检测 | 否 |
| 容器信息 (容器运行状态) | 否 |
| MQTT连接检测 | 否 |
| Redis连接检测 | 否 |
| MySQL连接检测 | 否 |
| FastDFS连接检测 | 否 |
| 安卓设备自检 | 否 |
| 服务日志导出 | 否 |
---
## 二、故障处理流程
### 2.1 故障处理标准流程
```plain
问题接收 → 信息收集 → 简单问题定位 → 自行实施修复 → 验证确认 → 记录归档
问题接收 → 信息收集 → 复杂问题定位 → 服务自检报告提供给研发 → 处理方案 → 实施修复 → 验证确认 → 记录归档
```
### 2.2 常见故障分类处理
#### 2.2.1 服务类故障
| 故障现象 | 可能原因 | 排查步骤 | 解决方案 |
| --- | --- | --- | --- |
| 服务无法启动 | 配置错误/端口占用 | 检查配置文件/检查端口 | 修正配置/释放端口 |
| 服务响应超时 | 资源不足/网络问题 | 检查CPU/内存/网络 | 扩容/优化/检查网络 |
| 服务频繁重启 | 异常崩溃/资源泄漏 | 查看崩溃日志 | 修复bug/增加资源 |
#### 2.2.2 网络类故障
| 故障现象 | 可能原因 | 排查步骤 | 解决方案 |
| --- | --- | --- | --- |
| 连接超时 | 防火墙/网络不通 | ping/telnet测试 | 放通端口/检查网络 |
| 端口占用 | 进程未正常退出 | netstat/ss查看 | 杀死占用进程 |
| 请求失败 | 证书过期/配置错误 | 检查证书/配置 | 更新证书/修正配置 |
#### 2.2.3 数据库故障
| 故障现象 | 可能原因 | 排查步骤 | 解决方案 |
| --- | --- | --- | --- |
| 连接失败 | 服务未启/密码错误 | 检查服务/验证密码 | 启动服务/更新密码 |
| 查询慢 | 索引缺失/数据量大 | explain分析 | 添加索引/优化SQL |
| 死锁问题 | 事务冲突 | 查看锁信息 | 回滚事务/优化逻辑 |
#### 2.2.4 MQTT故障
| 故障现象 | 可能原因 | 排查步骤 | 解决方案 |
| --- | --- | --- | --- |
| 连接断开 | 网络波动/认证失败 | 检查网络/凭证 | 重连/更新凭证 |
| 消息发送失败 | Topic错误/权限不足 | 检查Topic/权限 | 修正Topic/授权 |
| 订阅异常 | QoS不匹配/格式错误 | 检查订阅参数 | 调整QoS/修正格式 |
### 2.3 应急快速响应
- [ ] 一键重启命令
- [ ] 快速回滚方案
- [ ] 临时规避措施
- [ ] 紧急联系人
---
## 三、专项维护操作
### 3.1 服务自检工具使用
- [ ] PowerShell自检脚本执行
- [ ] 自检项目配置
- [ ] 自检报告解读
- [ ] 自检计划设置
**检查项目清单:**
| 检查项 | 检查内容 | 正常状态 |
| --- | --- | --- |
| 系统类型识别 | 识别会议预定系统(ujava)、运维集控系统(upython) | 已部署 |
| ujava容器内服务 | nginx、meeting服务运行状态 | 运行中 |
| ujava宿主机服务 | extapi服务运行状态 | 运行中 |
| upython容器服务 | 端口8081/8443/8000/8002/11211服务状态 | 运行中 |
| DNS解析检测 | DNS配置、解析测试、修复功能 | 配置正常、解析成功 |
| CPU使用率 | CPU核心数、使用百分比 | <80% |
| 内存使用 | 内存总量、使用量、使用率 | <80% |
| 磁盘空间 | 根分区/boot/home分区使用率 | <80% |
| 防火墙状态 | firewalld状态、开放端口/服务 | 已启用 |
| NTP时间同步 | 时间偏差检测 | 时间差0s |
| 文件权限 | 关键启动脚本/配置文件执行权限 | rwxr-xr-x |
| 容器信息 | 容器总数、运行中数量、停止数量 | 运行中 |
| MQTT连接 | 端口可访问性、主题订阅测试 | 正常 |
| Redis连接 | 连接、读写、删除、信息采集 | 完全正常 |
| MySQL连接 | 数据库连接测试 | 完全正常 |
| FastDFS连接 | 上传、下载、完整性验证 | 完全正常 |
| 安卓设备 | ADB连接、设备状态检测 | 连接正常 |
| 服务日志导出 | 各服务日志文件导出 | 导出成功 |
### 3.2 MQTT消息服务维护
- [ ] MQTT客户端连接测试
- [ ] Topic订阅/发布验证
- [ ] 消息内容格式检查
- [ ] 设备模拟测试
### 3.3 移动端维护
- [ ] ADB设备连接管理
- [ ] 移动设备状态查看
- [ ] 应用安装/卸载操作
---
## 四、附录
### 4.1 常用命令速查
#### 服务管理
```bash
# 查看服务状态
systemctl status <service>
# 启动/停止/重启服务
systemctl start/stop/restart <service>
# 查看进程
ps -ef | grep <process>
ps aux | grep <process>
# 结束进程
kill -9 <pid>
```
#### 日志查看
```bash
# 实时查看日志
tail -f <log_file>
# 查看最后n行
tail -n <number> <log_file>
# 搜索关键字
grep "keyword" <log_file>
grep -C 10 "keyword" <log_file> # 上下10行
# 查看错误日志
grep -i "error\|exception" <log_file>
```
#### 网络诊断
```bash
# 测试连通性
ping <host>
# 测试端口
telnet <host> <port>
nc -zv <host> <port>
# 查看端口占用
netstat -tulnp | grep <port>
ss -tulnp | grep <port>
```
#### 系统资源
```bash
# 查看磁盘空间
df -h
# 查看内存使用
free -h
# 查看CPU使用
top
htop
# 查看系统负载
uptime
```
#### 移动设备
```bash
# 查看连接设备
adb devices
# 连接设备
adb connect <ip>:5555
# 断开设备
adb disconnect <ip>
# 进入设备
adb shell
# 查找进程
ps -ef | grep com.ubains
# 查看日志
logcat --pid=<进程号>
```
### 4.2 常见问题FAQ
| 问题 | 原因 | 解决方案 |
| --- | --- | --- |
| 系统网页报错“502 Bad Gatway” | 主服务进程异常停止或磁盘空间爆满 | 执行服务自检脚本检查修复 |
| 系统网页无法使用邮件或短信通知功能 | 未配置有效DNS | 执行服务自检脚本自动修复 |
| 系统无法使用有关门口屏下发的功能 | MQTT服务异常 | 执行服务自检脚本自动修复 |
| 系统无缘故使用功能时请求失败 | 磁盘空间可能满了 | 执行服务自检脚本自动修复 |
### 5.3 联系方式
| 角色 | 联系方式 | 负责范围 |
| --- | --- | --- |
| 运维负责人 | 陈泽键 | 全系统问题 |
| 开发负责人 | 陈泽键 | 功能缺陷/代码问题 |
---
## 优化功能回填
> 本章节用于记录手册使用过程中发现的优化点和改进措施
>
| 日期 | 优化项 | 状态 | 备注 |
| --- | --- | --- | --- |
| - | - | - | - |
# 服务自检报告
+ 服务器地址: 192.168.5.47
+ 服务器描述: 标准版预定运维测试发布服务器
+ 平台类型: 传统平台
+ 检测时间: 2026-02-24 14:04:09
## 系统类型识别
+ 会议预定系统 (ujava): 已部署 [ujava6]
+ 运维集控系统 (upython): 已部署 [upython1]
## ujava 容器内服务状态
+ ✅ nginx (nginx: master process): 运行中
+ ✅ meeting (ubains-meeting-inner-api-1.0-SNAPSHOT.jar): 运行中
## ujava 宿主机服务状态
+ ✅ extapi (ubains-meeting-api-1.0-SNAPSHOT.jar): 运行中
## upython 容器服务状态
+ ✅ 端口 8081 (Nginx 代理服务 (8081)): 运行中
+ ✅ 端口 8443 (Nginx HTTPS 服务 (8443)): 运行中
+ ✅ 端口 8000 (uWSGI 应用服务): 运行中
+ ✅ 端口 8002 (Apache HTTPD 服务): 运行中
+ ✅ 端口 11211 (Memcached 缓冲服务): 运行中
## DNS 解析检测结果
+ ✅ DNS配置: 正常,DNS服务器: 114.114.114.114, 8.8.8.8, fe80::eef:afff:fed3:b2b0%enp4s1
+ ❌ DNS解析: 正常,测试域名解析: 0/0 成功
+ ✅ DNS修复: 已执行,远程脚本执行成功 (fix_dns_config) | 复检成功 ([www.baidu.com](http://www.baidu.com))
## 服务器资源分析
+ 操作系统: UOS Server 20 | 20
+ 系统架构: x86_64 | 内核: 4.19.90-2403.3.0.0270.87.uel20.x86_64
+ ✅ CPU 使用率: 32.9% (核心数: 8) [正常]
+ ✅ 内存使用: 0GB / 0GB (0%) [正常]
+ 磁盘使用:
- ✅ /: 45G/70G (63%) [正常]
- ✅ /boot: 266M/1014M (27%) [正常]
- ✅ /home: 17G/32G (54%) [正常]
+ 🟢 防火墙状态: 已启用 (firewalld)
- 开放端口/服务: 22/tcp 8883/tcp 18083/tcp 18082/tcp 443/tcp 8888/tcp 8997/tcp 22122/tcp 23000/tcp 62121/tcp 554/tcp 1935/tcp 10000/tcp 123/tcp 8998/tcp 8079/tcp 8085/tcp 8088/tcp 8086/tcp 8087/tcp 6060/tcp 9990/tcp 123/udp 8443/tcp 4443/tcp 8000/tcp 8002/tcp 9009/tcp 8996/tcp 8081/tcp 8306/tcp 8892/tcp 6379/tcp 1883/tcp, dhcpv6-client mdns ssh
## NTP 服务检测
+ 状态: ✅ 正常
+ 详情: 时间差 0s
+ 修复时间线
- 🟢 复检结果: 时间差 0s
## 文件权限检测
+ 总结: ✅ 已检查 16 项
+ 明细:
- -rwxr-xr-x 1 root root 1625 1月 12 14:11 /var/www/java/api-java-meeting2.0/run.sh
- -rwxr-xr-x 1 root root 1258 1月 13 19:46 /var/www/java/external-meeting-api/run.sh
- -rwxr-xr-x 1 root root 726 12月 11 18:00 /var/www/html/start.sh
- --wx--x--x 1 root root 300 12月 27 11:08 /var/www/wifi-local/config.ini
- --wx--x--x 1 root root 72 12月 26 14:11 /var/www/wifi-local/startDB.sh
- --wx--x--x 1 root root 33722952 12月 26 14:11 /var/www/wifi-local/wifi
- -rwxr-xr-x 1 root root 609 6月 7 2025 /var/www/paperless/run.sh
- -rwxr-xr-x 1 root root 68 6月 7 2025 /var/www/paperless/start.sh
- -rwxr-xr-x 1 root root 82648 11月 24 18:30 /var/www/redis/redis-8.2.2.conf
- -rwxr-xr-x 1 root root 2992 1月 14 09:49 /var/www/emqx/config/acl.conf
- -rwxr-xr-x 1 root root 1777 1月 14 09:49 /var/www/emqx/config/emqx.conf
- -rwxrwxrwx 1 root root 770 12月 23 15:29 /etc/rc.d/rc.local
- -rwxr-xr-x 1 root root 539 5月 23 2025 /var/www/java/start.sh
- -rw-r--r-- 1 root root 486 6月 7 2025 /var/www/java/nginx-conf.d/h5-8086.conf
- -rw-r--r-- 1 root root 10293 2月 11 09:13 /var/www/java/nginx-conf.d/meeting443.conf
- -rw-r--r-- 1 root root 1072 6月 7 2025 /var/www/java/nginx-conf.d/video8083.conf
## 容器信息
+ 容器总数: 14
+ 运行中: 13
+ 已停止: 1
+ ✅ 名称: onlyoffice-ds3 | 镜像: onlyoffice/documentserver:9.2.1 | 状态: running | 重启: always/1
- IP: - | 端口: -
- 网络: host | CPU: - | 内存: -
---
+ ✅ 名称: onlyoffice-ds2 | 镜像: onlyoffice/documentserver:9.2.1 | 状态: running | 重启: always/0
- IP: - | 端口: -
- 网络: host | CPU: - | 内存: -
---
+ ✅ 名称: onlyoffice-ds | 镜像: onlyoffice/documentserver:8.2.3 | 状态: running | 重启: always/0
- IP: - | 端口: -
- 网络: host | CPU: - | 内存: -
---
+ ✅ 名称: uemqx2 | 镜像: emqx/emqx:5.8.7 | 状态: running | 重启: always/0
- IP: 172.17.0.3 | 端口: 8883/tcp -> 0.0.0.0:8883,8883/tcp -> :::8883,1883/tcp -> 0.0.0.0:1883,1883/tcp -> :::1883,8083/tcp -> 0.0.0.0:8083,8083/tcp -> :::8083
- 网络: bridge | CPU: - | 内存: -
---
+ ✅ 名称: upython1 | 镜像: 139.9.60.86:5000/upython:v15 | 状态: running | 重启: always/0
- IP: 172.17.0.4 | 端口: 8000/tcp -> 0.0.0.0:8000,8000/tcp -> :::8000,8443/tcp -> 0.0.0.0:8443,8443/tcp -> :::8443,9009/tcp -> 0.0.0.0:9009,9009/tcp -> :::9009,8002/tcp -> 0.0.0.0:8002,8002/tcp -> :::8002
- 网络: bridge | CPU: - | 内存: -
---
+ ✅ 名称: ujava6 | 镜像: 139.9.60.86:5000/ujava:v6 | 状态: running | 重启: always/0
- IP: 172.17.0.5 | 端口: 8998/tcp -> 0.0.0.0:8998,8998/tcp -> :::8998,8999/tcp -> 0.0.0.0:8999,8999/tcp -> :::8999,443/tcp -> 0.0.0.0:443,443/tcp -> :::443,8997/tcp -> 0.0.0.0:8997,8997/tcp -> :::8997,8889/tcp -> 0.0.0.0:8889,8889/tcp -> :::8889,1935/tcp -> 0.0.0.0:1935,1935/tcp -> :::1935,2333/tcp -> 0.0.0.0:2333,2333/tcp -> :::2333,8079/tcp -> 0.0.0.0:8079,8079/tcp -> :::8079,8087/tcp -> 0.0.0.0:8087,8087/tcp -> :::8087,554/tcp -> 0.0.0.0:554,554/tcp -> :::554,2334/tcp -> 0.0.0.0:2334,2334/tcp -> :::2334,8080/tcp -> 0.0.0.0:8080,8080/tcp -> :::8080,8086/tcp -> 0.0.0.0:8086,8086/tcp -> :::8086,8088/tcp -> 0.0.0.0:8088,8088/tcp -> :::8088,10000/tcp -> 0.0.0.0:10000,10000/tcp -> :::10000,8085/tcp -> 0.0.0.0:8085,8085/tcp -> :::8085
- 网络: bridge | CPU: - | 内存: -
---
+ ✅ 名称: uredis2 | 镜像: 139.9.60.86:5000/redis:v3 | 状态: running | 重启: always/0
- IP: - | 端口: -
- 网络: host | CPU: - | 内存: -
---
+ ✅ 名称: ustorage | 镜像: 139.9.60.86:5000/ufastdfs:v1 | 状态: running | 重启: always/0
- IP: - | 端口: -
- 网络: host | CPU: - | 内存: -
---
+ ✅ 名称: cardtable | 镜像: uos-cardtable:v1 | 状态: running | 重启: always/0
- IP: - | 端口: -
- 网络: host | CPU: - | 内存: -
---
+ ✅ 名称: paperless | 镜像: paperless:v1 | 状态: running | 重启: always/0
- IP: 172.17.0.7 | 端口: 62121/tcp -> 0.0.0.0:62121,62121/tcp -> :::62121,62122/tcp -> 0.0.0.0:62122,62122/tcp -> :::62122
- 网络: bridge | CPU: - | 内存: -
---
+ ✅ 名称: ungrok | 镜像: ngrok:v1 | 状态: running | 重启: always/0
- IP: - | 端口: -
- 网络: host | CPU: - | 内存: -
---
+ ✅ 名称: utracker | 镜像: 139.9.60.86:5000/ufastdfs:v1 | 状态: running | 重启: always/0
- IP: - | 端口: -
- 网络: host | CPU: - | 内存: -
---
+ ✅ 名称: umysql | 镜像: 139.9.60.86:5000/umysql:v4 | 状态: running | 重启: always/0
- IP: 172.17.0.2 | 端口: 3306/tcp -> 0.0.0.0:8306,3306/tcp -> :::8306
- 网络: bridge | CPU: - | 内存: -
---
+ ❌ 名称: upython | 镜像: 139.9.60.86:5000/upython:v15 | 状态: exited | 重启: always/1
- IP: - | 端口: -
- 网络: bridge | CPU: - | 内存: -
---
## 中间件连接检测
+ ✅ MQTT连接检测: 正常 | MQTT端口 可访问 | 主题订阅: 0/7 成功 | 检测方式: TCP端口连通 | 容器: uemqx2 | Dashboard端口:
---
+ ✅ Redis连接检测: 正常 | Redis服务完全正常(连接+读写+删除+信息采集) | 容器: uredis2 | 端口: 6379 | 版本: 8.2.2 | 内存: 1.42M | 连接数: 14
---
+ ✅ MySQL连接检测: 正常 | MySQL服务完全正常 | 容器: umysql | 端口: 3306 | 版本: 139.9.60
---
+ ✅ FastDFS连接检测: 正常 | FastDFS服务完全正常(上传+下载+完整性验证) | Storage: | 架构: x86 | 文件ID: group1/M00/00/01/wKgFL2mdH8GANsx5AAAATe_NS7U467.txt
## 安卓设备自检
+ ✅ Android自检: 跳过,未输入设备IP
## 检测总结
+ 总服务数: 8
+ 正常运行: 8
+ 异常服务: 0
+ 结论: ✅ 所有服务运行正常!
## 服务日志导出
+ 导出状态: ✅ 成功
+ 导出目录: C:\Users\UBAINS\Desktop\Test\logs_192.168.5.47_20260224_140316
+ 成功文件:
- 对内后端_ubains-INFO-AND-ERROR.log (34664.31 KB)
- 对外后端_ubains-INFO-AND-ERROR.log (3076.19 KB)
- 运维集控_error.log (35.98 KB)
- 运维集控_uinfo.log (1810.17 KB)
- 运维集控_uwsgi.log (316425.27 KB)
- ujava6_nginx_error.log (3297.02 KB)
- upython1_nginx_error.log (17535.86 KB)
#!/bin/bash #!/bin/bash
#------------------------------工具类模块--------------------------------------------------- #------------------------------工具类模块---------------------------------------------------
# 日志打印函数 # 日志打印函数
LOG_FILE="/var/log/new_auto_script.log" LOG_FILE="/data/log/new_auto_script.log"
mkdir -p "$(dirname "$LOG_FILE")" 2>/dev/null mkdir -p "$(dirname "$LOG_FILE")" 2>/dev/null
# 用户输入的东西也同步记录到日志信息里面 # 用户输入的东西也同步记录到日志信息里面
function log() { function log() {
...@@ -248,6 +248,7 @@ echo -e "\033[36m ...@@ -248,6 +248,7 @@ echo -e "\033[36m
* Ubuntu * * Ubuntu *
* redhat7 * * redhat7 *
* 银河麒麟V10 * * 银河麒麟V10 *
* openEuler 24.03 *
* * * *
******************************************************* *******************************************************
\033[0m" \033[0m"
...@@ -265,10 +266,10 @@ fi ...@@ -265,10 +266,10 @@ fi
log "INFO" "当前操作系统版本为: $os_version" log "INFO" "当前操作系统版本为: $os_version"
case "$os_version" in case "$os_version" in
*"CentOS Linux 7"*|*"UOS"*|*"Kylin V10"*|*"Ubuntu"*|*"Red Hat Enterprise Linux Server 7"*) *"CentOS Linux 7"*|*"UOS"*|*"Kylin V10"*|*"Ubuntu"*|*"Red Hat Enterprise Linux Server 7"*|*"openEuler 24.03"*)
log "INFO" "当前操作系统版本适配,继续执行脚本" ;; log "INFO" "当前操作系统版本适配,继续执行脚本" ;;
*) *)
log "ERROR" "当前操作系统版本不适配,请使用CentOS 7、UOS、麒麟V10、Ubuntu或Red Hat Enterprise Linux Server 7" log "ERROR" "当前操作系统版本不适配,请使用CentOS 7、UOS、麒麟V10、Ubuntu或Red Hat Enterprise Linux Server 7 openEuler 24.03"
# 需要用户确认信息,支持默认空格和y或Y,并日志记录用户输入情况 # 需要用户确认信息,支持默认空格和y或Y,并日志记录用户输入情况
read -p "是否继续执行脚本?(y/n): " yn read -p "是否继续执行脚本?(y/n): " yn
if [[ -z "$yn" || "$yn" =~ ^[yY]$ ]]; then if [[ -z "$yn" || "$yn" =~ ^[yY]$ ]]; then
...@@ -1212,16 +1213,28 @@ function java_x86() ...@@ -1212,16 +1213,28 @@ function java_x86()
local host_nginx_log="/data/middleware/nginx/nginx_log" local host_nginx_log="/data/middleware/nginx/nginx_log"
local host_fdfs_data="/data/storage/storage/data" local host_fdfs_data="/data/storage/storage/data"
# 定义挂载映射
# 1. 定义卷挂载映射 (-v)
local volume_args=(
"-v $host_api:/var/www/java/api"
"-v $host_web:/var/www/java/web"
"-v $host_nginx_log:/usr/local/nginx/logs"
"-v /etc/localtime:/etc/localtime:ro"
"-v $host_fdfs_data:/var/fdfs/storage/data"
)
# 端口映射(可根据需要增减) # 端口映射(可根据需要增减)
local port_args=( local port_args=(
"-p 8085:8085" "-p 8085:8085"
"-p 8993:8993" "-p 8994:8994" "-p 8995:8995" "-p 8993:8993" "-p 8994:8994" "-p 8995:8995"
"-p 8999:8999" "-p 8999:8999"
"-p 8719:8719" "-p 8720:8720" "-p 8719:8719" "-p 8720:8720"
"-p 9204:9204" "-p 9200:9200" "-p 9201:9201" "-p 9204:9204" "-p 9200:9200" "-p 9201:9201" "-p 9903:9903"
"-p 9905:9905" "-p 9911:9911" "-p 9908:9908" "-p 9904:9904" "-p 9905:9905" "-p 9906:9906" "-p 9907:9907"
"-p 9906:9906" "-p 9907:9907" "-p 9909:9909" "-p 9910:9910" "-p 9908:9908" "-p 9909:9909" "-p 9910:9910" "-p 9911:9911"
"-p 30880:30880" "-p 30881:30881" "-p 30882:30882" "-p 9912:9912" "-p 9913:9913" "-p 9914:9914" "-p 9915:9915"
"-p 9916:9916" "-p 9917:9917" "-p 9918:9918" "-p 9919:9919"
"-p 9920:9920" "-p 30880:30880" "-p 30881:30881" "-p 30882:30882"
"-p 30883:30883" "-p 30884:30884" "-p 30883:30883" "-p 30884:30884"
) )
...@@ -1256,7 +1269,17 @@ function java_x86() ...@@ -1256,7 +1269,17 @@ function java_x86()
# ------------------- 启动 Java 容器 ------------------- # ------------------- 启动 Java 容器 -------------------
log "INFO" "🚀 正在启动 Java 容器: $container_name ..." log "INFO" "🚀 正在启动 Java 容器: $container_name ..."
$sudoset docker run -itd --privileged -v /data/services/api:/var/www/java/api -v /data/services/web:/var/www/java/web -v /data/middleware/nginx/nginx_log:/usr/local/nginx/logs -v /etc/localtime:/etc/localtime:ro -v /data/storage/storage/data:/var/fdfs/storage/data -p 8085:8085 -p 8993:8993 -p 8994:8994 -p 8995:8995 -p 8999:8999 -p 8719:8719 -p 8720:8720 -p 9204:9204 -p 9200:9200 -p 9201:9201 -p 9905:9905 -p 9911:9911 -p 9908:9908 -p 9906:9906 -p 9907:9907 -p 9909:9909 -p 9910:9910 -p 30880:30880 -p 30881:30881 -p 30882:30882 -p 30883:30883 -p 30884:30884 --restart=always --mac-address="02:42:ac:11:00:02" --name ujava2 $image_name /var/www/java/api/start.sh # $sudoset docker run -itd --privileged -v /data/services/api:/var/www/java/api -v /data/services/web:/var/www/java/web -v /data/middleware/nginx/nginx_log:/usr/local/nginx/logs -v /etc/localtime:/etc/localtime:ro -v /data/storage/storage/data:/var/fdfs/storage/data "${port_args[@]}" --restart=always --mac-address="02:42:ac:11:00:02" --name ujava2 $image_name /var/www/java/api/start.sh
$sudoset docker run -itd \
--privileged \
--entrypoint /bin/bash \
--restart=always \
--name "$container_name" \
--mac-address="02:42:ac:11:00:02" \
"${volume_args[@]}" \
"${port_args[@]}" \
"$image_name" \
/var/www/java/api/start.sh
if [ $? -ne 0 ]; then if [ $? -ne 0 ]; then
log "ERROR" "⛔ 容器启动失败" log "ERROR" "⛔ 容器启动失败"
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论