Skip to content

生产运维

本页是生产环境日常运维清单,不包含任何服务器密码、证书私钥或应用密钥。敏感值只保存在权限受控的环境变量文件或密钥系统中。

服务清单

服务生产形式关键端口
MySQL、Redis宿主机服务仅内网或受控来源访问。
shengyu-serverDocker 容器48080 HTTP、9000 IM WebSocket。
两个 Vue 管理端、钰信 WebDocker 容器本机 808080818082
kkFileViewDocker 容器本机 48090
LiveKitDocker 容器78807881/tcp7882/udp、TURN/relay 端口。
Nginx宿主机服务80/443、HTTPS 和反向代理。

日常检查

bash
docker ps
sudo nginx -t
sudo systemctl status nginx --no-pager
curl -I https://shengyukj.top/
curl -I https://saasadmin.shengyukj.top/
curl -I https://im.shengyukj.top/

后端容器日志使用 docker logs --tail 200 shengyu-server 查询。排查通话时同时查看 LiveKit 容器日志和安全组;排查上传时检查 Nginx 的请求体大小、后端日志和持久化文件目录。

发布顺序

  1. 在测试环境完成构建和核心业务验证。
  2. 备份旧 Jar、前端静态目录、Nginx 配置和数据库变更记录。
  3. 先执行经审查的幂等 SQL 增量,再部署后端、Vue、Flutter Web 或 LiveKit 变更。
  4. 确认容器启动、Nginx 配置、HTTPS、API、WebSocket、图片上传和通话。
  5. 保存本次发布版本、构建时间、变更范围和回滚位置。

备份重点

  • MySQL:定期逻辑备份并验证可恢复性。
  • Redis:按业务需要保留持久化与恢复策略;不要把 Redis 当作唯一业务数据来源。
  • 文件:备份后端持久化文件目录,特别是应用版本安装包和用户上传文件。
  • 配置:备份 Nginx、Compose 和环境变量的结构;敏感值应加密保存,不应进入 Git。

证书与安全组

HTTPS 证书应自动续期,并在续期后验证 Nginx reload。安全组只对公网开放网站和 RTC 必需端口;MySQL、Redis、Docker API 和内部管理端口不应对 0.0.0.0/0 开放。