Files
PicAnalysis/backend/docker-entrypoint.sh
congsh 9a301cc434 feat(ocr): 集成 PaddleOCR 服务并优化 OCR 系统
- 新增 PaddleOCR 本地高精度 OCR 服务支持,包括 Dockerfile、API 服务和 provider 实现
- 在 docker-compose 中集成 RapidOCR 和 PaddleOCR 服务,并配置健康检查
- 优化后端 API 路由前缀,移除 `/api` 以简化代理配置
- 更新 Nginx 配置以正确传递请求头和代理 WebSocket 连接
- 在前端设置页面添加 PaddleOCR 和 RapidOCR 的测试与配置选项
- 修复后端 Dockerfile 以支持 Python 原生模块构建
- 更新 OCR 设置指南,反映当前服务状态和部署方式
- 添加上传文件调试日志和权限设置
2026-02-27 18:43:07 +08:00

32 lines
944 B
Bash

#!/bin/sh
# Ensure data directory exists with proper permissions
mkdir -p /app/data
chown -R nodejs:nodejs /app/data
# Ensure uploads directory exists with proper permissions (after volume mount)
mkdir -p /app/uploads
chown -R nodejs:nodejs /app/uploads
chmod 755 /app/uploads
# Set database path to data directory
export DATABASE_URL="file:/app/data/prod.db"
# Run Prisma migrations (as root, then switch to nodejs)
echo "Running database migrations..."
npx prisma db push --skip-generate || echo "Database push failed, will try on startup..."
# Fix database file permissions after creation
if [ -f /app/data/prod.db ]; then
chown nodejs:nodejs /app/data/prod.db
chmod 664 /app/data/prod.db
fi
# Log uploads directory status
echo "Uploads directory status:"
ls -la /app/uploads || echo "Uploads directory does not exist"
# Start the application as nodejs user
echo "Starting application..."
exec su-exec nodejs npx tsx src/index.ts