Dish_Recognition/dish_server/README.md

79 lines
2.1 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 总服务器中心 API
给**总服务器**单独用的服务:收工位机图片、提供图片 URL、接收识别结果。
不依赖相机、YOLO、客户端界面。把整个 `dish_server` 文件夹拷到云机即可。
## 快速启动
Windows / Linux:
1. 安装 Python 3.10+(标准库即可,无需 torch)
2. 在本目录执行:
```bat
python main.py
```
也可在项目根目录:
```bat
python -m dish_server
```
上传接口:`http://116.147.40.47:9100`(与 `cpsb.ruimeida.cc` 同机)
图片落盘:`/data/tpweb`
对外访问:`https://cpsb.ruimeida.cc/tpweb/...`(由站点 Nginx 提供 HTTPS)
浏览器探活:`http://116.147.40.47:9100/api/health` → `"status": "up"`。
## 配置
1. 复制 `env.example` 为 `.env`
2. 推荐:
```
DISH_API_HOST=0.0.0.0
DISH_API_PORT=9100
DISH_MEDIA_ROOT=/data/tpweb
DISH_MEDIA_PUBLIC_BASE=https://cpsb.ruimeida.cc/tpweb
```
3. 确保 Nginx 已把 `/tpweb/` 映射到 `/data/tpweb`
4. 安全组放行 **9100**(工位机上传用)
## 接口
| 方法 | 路径 | 说明 |
|------|------|------|
| GET | `/api/health` | 探活 |
| POST | `/api/dish/media/upload` | 上传图片,返回 `url` |
| GET | `/tpweb/...` 或 `/media/...` | 访问已上传图片(同目录) |
| POST | `/api/dish/recognize/result` | 上报识别结果(字段为 URL) |
| GET | `/api/dish/recognize/records` | 最近结果列表 |
数据目录:
```
/data/tpweb/ 图片(DISH_MEDIA_ROOT)
dish_server/data/results/ 识别 JSON(可选)
```
## 工位机怎么连
工位机客户端设置(或环境变量):
```
DISH_RESULT_API_MOCK=0
DISH_MEDIA_UPLOAD_URL=http://116.147.40.47:9100/api/dish/media/upload
DISH_MEDIA_PUBLIC_BASE=https://cpsb.ruimeida.cc/tpweb
DISH_RESULT_API_URL=https://cpsb.ruimeida.cc/api/public/recognition-orders
```
客户端默认:上传到 `:9100`,上报 JSON 里的图为 `https://cpsb.ruimeida.cc/tpweb/...`。
## 生产建议
- 对外图片 URL 必须用 HTTPS:`https://cpsb.ruimeida.cc/tpweb`
- Nginx 将 `/tpweb/` 映射到 `/data/tpweb`
- 云机一键部署:`bash deploy_tpweb.sh`