2026-08-31 18:01:34 +08:00
|
|
|
|
# geMoldInsight Frontend
|
2026-05-29 17:30:26 +08:00
|
|
|
|
|
2026-08-31 18:01:34 +08:00
|
|
|
|
这是 geMoldInsight 的独立前端工程,基于:
|
2026-05-29 17:30:26 +08:00
|
|
|
|
|
2026-08-31 18:01:34 +08:00
|
|
|
|
- Vue 3
|
|
|
|
|
|
- Vite
|
|
|
|
|
|
- TypeScript
|
|
|
|
|
|
- Pinia
|
|
|
|
|
|
- Vue Router
|
|
|
|
|
|
|
|
|
|
|
|
当前推荐部署方式为:
|
|
|
|
|
|
|
|
|
|
|
|
> **独立前端部署 + 同域反代 + unified backend**
|
|
|
|
|
|
|
|
|
|
|
|
即:
|
|
|
|
|
|
- 前端由 Nginx 静态站点独立提供
|
|
|
|
|
|
- `/api`、`/health`、`/html` 通过同域反代统一转发到一个 unified backend
|
|
|
|
|
|
- 前端继续使用相对路径调用后端接口
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
## 本地开发
|
|
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
|
npm install
|
|
|
|
|
|
npm run dev
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
开发服务器默认:
|
|
|
|
|
|
- 端口:`5173`
|
|
|
|
|
|
- 已代理:`/api`、`/health`、`/html`
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
## 生产构建
|
|
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
|
npm run build
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
构建产物输出到:
|
|
|
|
|
|
- `frontend/dist/`
|
|
|
|
|
|
|
|
|
|
|
|
该目录由前端 Nginx 镜像或外部静态站点托管,不再输出到仓库根目录 `static/`。
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
## 部署
|
|
|
|
|
|
|
|
|
|
|
|
当前仓库已提供:
|
|
|
|
|
|
- [deploy/Dockerfile.frontend](../deploy/Dockerfile.frontend)
|
|
|
|
|
|
- [deploy/nginx/frontend.conf](../deploy/nginx/frontend.conf)
|
|
|
|
|
|
|
2026-09-24 16:09:26 +08:00
|
|
|
|
以及根目录 [docker-compose.yml](../docker-compose.yml)(unified 模式)中的 `frontend` 服务。完整系统一键启动:
|
2026-08-31 18:01:34 +08:00
|
|
|
|
|
|
|
|
|
|
```bash
|
2026-09-24 15:28:13 +08:00
|
|
|
|
docker compose up -d
|
2026-08-31 18:01:34 +08:00
|
|
|
|
```
|
|
|
|
|
|
|
2026-09-24 16:09:26 +08:00
|
|
|
|
> 旧 `--profile frontend` 仅起前端的写法已随 compose 拆分移除;前端同域反代依赖 unified backend,推荐整栈启动。前后端分离开发时,前端本地 `npm run dev`、后端直跑 `uvicorn`(见 [LINUX_SETUP.md](../docs/deployment/LINUX_SETUP.md) §6)。
|
|
|
|
|
|
|
2026-08-31 18:01:34 +08:00
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
## 说明
|
|
|
|
|
|
|
|
|
|
|
|
前端历史上曾通过后端 `static/` 目录托管;当前已切换为独立部署模式。后端默认不再负责提供 SPA 页面,但仍提供:
|
|
|
|
|
|
|
|
|
|
|
|
- `/api/*`
|
|
|
|
|
|
- `/health`
|
|
|
|
|
|
- `/html/*`(gemold 分析产物)
|