Move admin auth local

This commit is contained in:
john
2026-06-20 16:52:13 +08:00
parent 7a5b9cc912
commit a2333f991b
8 changed files with 508 additions and 39 deletions
+25 -7
View File
@@ -9,7 +9,7 @@
| 部署目标 | `john@100.99.38.66:/Users/john/Project/memind_adm` |
| 服务端口 | `5174` |
| 运行方式 | `vite preview`(静态资源 + API 反代) |
| 后端 API | 远端 `.env``ADM_DEV_BACKEND`默认 `http://127.0.0.1:8081` |
| 后端 API | 本仓库 `server/``ADM_API_PORT` 默认 `8085`,与 Memind portal 解耦 |
| 日志 | `/Users/john/Project/memind_adm/adm-preview.log` |
## 前置条件
@@ -19,7 +19,21 @@
ssh john@100.99.38.66
```
2. 本机已安装 Node.js,项目依赖已安装(`npm install`)。
3. 100 服务器上后端(Memind portal / `server.mjs`在 `8081` 运行,否则页面能打开但登录、API 会失败
3. 100 服务器上 **memind_adm Admin API** 在 `8085` 运行`remote_restart.sh` 会自动启动),MySQL 与 Memind 共用
## gadm 独立登录
`https://gadm.tkmind.cn` 应部署 **本仓库 memind_adm**,勿再反代到 `Memind/ops` Vite dev(旧版未登录会跳 `localhost:5173`)。
| 项 | 说明 |
|---|---|
| 登录 | 本页 `/auth/login`,账号来自共用 MySQL |
| 会话 | 设置 `H5_PUBLIC_BASE_URL=https://gadm.tkmind.cn`**不要**设 `H5_COOKIE_DOMAIN=.tkmind.cn` |
| 路径 | `https://gadm.tkmind.cn/` 直达超管后台;Plaza 运营在 `/ops``/ops/admin` 已废弃 |
| API | `ADM_DEV_BACKEND=http://127.0.0.1:8085`preview 反代目标) |
| 初始化 admin | 首次部署后运行 `npm run admin:init`,密码只写入数据库,不放 `.env` |
nginx 示例见 `scripts/gadm-nginx.conf.example``/ops/` → preview`/auth` `/admin-api` `/api` → Admin API `8085`)。
## 更新部署(推荐)
@@ -91,11 +105,14 @@ ssh john@100.99.38.66 'tail -f /Users/john/Project/memind_adm/adm-preview.log'
编辑远端 `.env`(首次部署后路径:`/Users/john/Project/memind_adm/.env`):
```env
# preview 反代目标(/auth、/admin-api、/api
ADM_DEV_BACKEND=http://127.0.0.1:8081
# preview 反代目标(/auth、/admin-api、/api— 指向本仓库 Admin API
ADM_API_PORT=8085
ADM_DEV_BACKEND=http://127.0.0.1:8085
H5_PUBLIC_BASE_URL=https://gadm.tkmind.cn
VITE_BASE_PATH=/ops
# 「返回对话」跳转地址
VITE_MAIN_APP_URL=http://127.0.0.1:8081
# 「返回对话」跳转主 H5(可选)
VITE_MAIN_APP_URL=https://h5.tkmind.cn
```
修改 `.env` 后需重启服务生效。
@@ -105,7 +122,8 @@ VITE_MAIN_APP_URL=http://127.0.0.1:8081
| 现象 | 处理 |
|---|---|
| `无法 SSH 到 john@100.99.38.66` | 确认 Tailscale 在线;必要时 `ssh-copy-id john@100.99.38.66` |
| 首页 200 但登录失败 | 检查 100 上 `8081` 后端是否运行 |
| 首页 200 但登录失败 | 检查 100 上 `8085` Admin API 是否运行(`curl http://127.0.0.1:8085/health` |
| 打开后跳 localhost:5173 | nginx 仍指向 Memind/ops dev;改反代到 memind_adm `:5174`,并重新部署 |
| `dist 不存在` | 先在本机 `npm run build`,或完整执行 `./scripts/rsync_to_server.sh` |
| 启动失败 | 查看 `adm-preview.log`;确认远端 Node 在 PATH 中(需 Homebrew `node@22` 等) |
| 端口被占用 | `remote_restart.sh` 会自动 kill 旧进程;仍异常时可手动 `lsof -iTCP:5174 -sTCP:LISTEN` |