优化注册功能

This commit is contained in:
赵杰 Jie Zhao (雄狮汽车科技)
2025-11-03 12:29:32 +08:00
parent f50d37259e
commit 7ab87e8f15
10 changed files with 829 additions and 83 deletions

View File

@@ -186,12 +186,72 @@ server {
}
```
## 💾 小内存机器配置512MB-1GB
如果你的 Linux 机器内存较小,可以使用专门优化的小内存版本:
```bash
# 使用小内存优化的 Dockerfile 和配置
docker-compose -f docker-compose.low-mem.yml up -d
# 查看日志
docker-compose -f docker-compose.low-mem.yml logs -f
# 停止容器
docker-compose -f docker-compose.low-mem.yml down
```
### 小内存优化措施
1. **单 Worker 配置**Gunicorn 使用 1 个 worker + 2 个线程,减少内存占用
2. **最小化依赖**:移除 GUI 相关依赖CustomTkinter、Kivy等
3. **OpenCV Headless**:使用 `opencv-python-headless`,不包含 GUI 组件
4. **内存限制**:容器内存限制为 512MB最大保留 256MB
5. **环境变量优化**:设置 `MALLOC_ARENA_MAX=2``PYTHONHASHSEED=0` 减少内存碎片
### 内存需求对比
| 配置 | 内存需求 | 适用场景 |
|------|---------|---------|
| 标准版Dockerfile | 1GB+ | 服务器、开发环境 |
| 小内存版Dockerfile.low-mem | 512MB-1GB | 树莓派、小型 VPS、低配服务器 |
### 手动调整内存限制
如果使用标准版,可以通过修改 `docker-compose.yml` 来限制内存:
```yaml
services:
web:
deploy:
resources:
limits:
memory: 512M # 限制最大内存
reservations:
memory: 256M # 保留内存
```
## 📝 注意事项
1. **OCR功能**Docker镜像已包含Tesseract OCR支持
2. **内存限制**建议至少分配1GB内存给容器
3. **文件权限**:确保挂载的目录有适当的读写权限
4. **时区设置**如需修改时区在Dockerfile中添加
1. **OCR功能**
- Docker镜像已包含 Tesseract OCR 支持(轻量级)
- **未包含** PaddleOCR 和 EasyOCR内存占用大需要手动安装
- 默认只使用 Tesseract OCR内存占用很小
2. **内存限制**
- 标准版:建议至少分配 **1GB 内存**给容器
- 小内存版:可以在 **512MB 内存**的机器上运行
3. **Worker 数量调整**
- 标准版默认 2 个 worker适合 1GB+ 内存)
- 小内存机器可以在 `Dockerfile` 中修改为 1 个 worker
```dockerfile
CMD ["gunicorn", "--bind", "0.0.0.0:5000", "--workers", "1", ...]
```
4. **文件权限**:确保挂载的目录有适当的读写权限
5. **时区设置**如需修改时区在Dockerfile中添加
```dockerfile
ENV TZ=Asia/Shanghai
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone