diff --git a/README.md b/README.md index a9bcd8a..702f81c 100644 --- a/README.md +++ b/README.md @@ -143,6 +143,32 @@ bash deploy/backup.sh # 备份 bash deploy/uninstall.sh # 停止并卸载 ``` +### 停止 / 启动(不卸载) + +```bash +sudo systemctl stop grade-archive +sudo systemctl start grade-archive +sudo systemctl restart grade-archive +``` + +### 卸载 + +```bash +# 仅停服务,保留代码与数据 +sudo bash /opt/secondary-school-grade-archive/deploy/uninstall.sh + +# 删除安装目录 +sudo bash /opt/secondary-school-grade-archive/deploy/uninstall.sh --purge + +# 删除数据库 +sudo bash /opt/secondary-school-grade-archive/deploy/uninstall.sh --purge-db + +# 完全清除 +sudo bash /opt/secondary-school-grade-archive/deploy/uninstall.sh --purge --purge-db +``` + +详见 [docs/DEPLOY.md §5.1 / §5.2](./docs/DEPLOY.md#51-停止与启动服务)。 + --- ## 技术支持 diff --git a/docs/DEPLOY.md b/docs/DEPLOY.md index e320702..9aea392 100644 --- a/docs/DEPLOY.md +++ b/docs/DEPLOY.md @@ -180,6 +180,65 @@ bash /opt/secondary-school-grade-archive/deploy/backup.sh --- +## 5.1 停止与启动服务 + +仅暂停服务、不卸载时使用: + +```bash +sudo systemctl stop grade-archive # 停止 +sudo systemctl start grade-archive # 启动 +sudo systemctl restart grade-archive # 重启 +systemctl status grade-archive # 查看状态 +``` + +若曾安装 OCR Worker: + +```bash +sudo systemctl stop ocr-worker +sudo systemctl start ocr-worker +``` + +停止后浏览器访问 `http://<服务器IP>:23566` 会无法连接;启动后即可恢复。 + +--- + +## 5.2 卸载 + +卸载脚本会停止并禁用 systemd 服务、清理旧版 PM2 进程,以及可选删除安装目录 / 数据库。 + +```bash +# 停止服务并禁用,保留代码、数据库、uploads(可再次 install / update) +sudo bash /opt/secondary-school-grade-archive/deploy/uninstall.sh + +# 额外删除安装目录 /opt/secondary-school-grade-archive +sudo bash /opt/secondary-school-grade-archive/deploy/uninstall.sh --purge + +# 额外删除 PostgreSQL 库与用户(默认库 student_archive、用户 gradeapp) +sudo bash /opt/secondary-school-grade-archive/deploy/uninstall.sh --purge-db + +# 完全清除(目录 + 数据库),便于干净重装 +sudo bash /opt/secondary-school-grade-archive/deploy/uninstall.sh --purge --purge-db +``` + +说明: + +| 选项 | 效果 | +|------|------| +| (无选项) | 停止并删除 `grade-archive` / `ocr-worker` 服务单元;保留 `/opt/...`、数据库、上传文件 | +| `--purge` | 删除安装目录(含代码、`.env`、`uploads`) | +| `--purge-db` | 删除 PostgreSQL 数据库与应用用户 | + +脚本需 **root** 执行(`sudo bash ...`)。交互式终端下会询问确认;取消则退出且不做修改。 + +卸载后重新部署见 [§3 一键部署](#3-一键部署新服务器)。若仅停服务未 `--purge`,可直接: + +```bash +cd /opt/secondary-school-grade-archive +sudo bash deploy/install.sh +``` + +--- + ## 6. 从旧版 PM2 迁移 若之前使用 `grade-api` + `grade-web`(PM2 + Express),执行 `deploy/update.sh` 会: