- 新增 PaddleOCR 本地高精度 OCR 服务支持,包括 Dockerfile、API 服务和 provider 实现 - 在 docker-compose 中集成 RapidOCR 和 PaddleOCR 服务,并配置健康检查 - 优化后端 API 路由前缀,移除 `/api` 以简化代理配置 - 更新 Nginx 配置以正确传递请求头和代理 WebSocket 连接 - 在前端设置页面添加 PaddleOCR 和 RapidOCR 的测试与配置选项 - 修复后端 Dockerfile 以支持 Python 原生模块构建 - 更新 OCR 设置指南,反映当前服务状态和部署方式 - 添加上传文件调试日志和权限设置
32 lines
944 B
Bash
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
|