Skip to content
تم إنشاء هذه الصفحة وترجمتها بمساعدة الذكاء الاصطناعي. إذا لاحظت أي أخطاء، لا تتردد في المساهمة في تحسينها. تعديل على GitHub

مرجع الإعداد ​

يُهيَّأ OpenPR من خلال متغيرات البيئة. تقرأ جميع الخدمات من نفس ملف .env عند استخدام Docker Compose، أو متغيرات البيئة الفردية عند التشغيل المباشر.

خادم API ​

المتغيرالافتراضيالوصف
APP_NAMEapiمعرف التطبيق للسجل
BIND_ADDR0.0.0.0:8080العنوان والمنفذ الذي يستمع إليه API
DATABASE_URL--سلسلة اتصال PostgreSQL
JWT_SECRETchange-me-in-productionالمفتاح السري لتوقيع رموز JWT
JWT_ACCESS_TTL_SECONDS2592000 (30 يوم)مدة حياة رمز الوصول بالثواني
JWT_REFRESH_TTL_SECONDS604800 (7 أيام)مدة حياة رمز التحديث بالثواني
RUST_LOGinfoمستوى السجل (trace, debug, info, warn, error)
UPLOAD_DIR/app/uploadsدليل رفع الملفات

أمان

غيِّر دائماً JWT_SECRET إلى قيمة قوية وعشوائية في الإنتاج. استخدم على الأقل 32 حرفاً من البيانات العشوائية:

bash
openssl rand -hex 32

قاعدة البيانات ​

المتغيرالافتراضيالوصف
DATABASE_URL--سلسلة اتصال PostgreSQL الكاملة
POSTGRES_DBopenprاسم قاعدة البيانات
POSTGRES_USERopenprمستخدم قاعدة البيانات
POSTGRES_PASSWORDopenprكلمة مرور قاعدة البيانات

تنسيق سلسلة الاتصال:

postgres://user:password@host:port/database

Docker Compose

عند استخدام Docker Compose، تُسمى خدمة قاعدة البيانات postgres، لذا سلسلة الاتصال هي:

postgres://openpr:openpr@postgres:5432/openpr

العامل ​

المتغيرالافتراضيالوصف
APP_NAMEworkerمعرف التطبيق
DATABASE_URL--سلسلة اتصال PostgreSQL
JWT_SECRET--يجب أن يطابق قيمة خادم API
RUST_LOGinfoمستوى السجل

يعالج العامل مهام الخلفية من جدولي job_queue وscheduled_jobs.

خادم MCP ​

المتغيرالافتراضيالوصف
APP_NAMEmcp-serverمعرف التطبيق
OPENPR_API_URL--رابط خادم API (بما فيه الوكيل إن وجد)
OPENPR_BOT_TOKEN--رمز البوت بادئة opr_
OPENPR_WORKSPACE_ID--UUID مساحة العمل الافتراضية
DATABASE_URL--سلسلة اتصال PostgreSQL
JWT_SECRET--يجب أن يطابق قيمة خادم API
DEFAULT_AUTHOR_ID--UUID المؤلف الاحتياطي لعمليات MCP
RUST_LOGinfoمستوى السجل

خيارات نقل MCP ​

يقبل ثنائي خادم MCP وسيطات سطر الأوامر:

bash
# HTTP mode (default)
mcp-server --transport http --bind-addr 0.0.0.0:8090

# stdio mode (for Claude Desktop, Codex)
mcp-server --transport stdio

# Subcommand form
mcp-server serve --transport http --bind-addr 0.0.0.0:8090

الواجهة الأمامية ​

المتغيرالافتراضيالوصف
VITE_API_URLhttp://localhost:8080رابط خادم API لاتصال الواجهة الأمامية

الوكيل العكسي

في الإنتاج مع وكيل عكسي (Caddy/Nginx)، يجب أن يشير VITE_API_URL إلى رابط الوكيل الذي يوجه إلى خادم API.

منافذ Docker Compose ​

الخدمةالمنفذ الداخليالمنفذ الخارجيالغرض
PostgreSQL54325432قاعدة البيانات
API80808081REST API
Worker----مهام الخلفية (بلا منفذ)
خادم MCP80908090أدوات MCP
الواجهة الأمامية803000واجهة الويب

مثال ملف .env ​

bash
# Database
DATABASE_URL=postgres://openpr:openpr@localhost:5432/openpr
POSTGRES_DB=openpr
POSTGRES_USER=openpr
POSTGRES_PASSWORD=openpr

# JWT (CHANGE IN PRODUCTION)
JWT_SECRET=change-me-in-production
JWT_ACCESS_TTL_SECONDS=2592000
JWT_REFRESH_TTL_SECONDS=604800

# API Server
APP_NAME=api
BIND_ADDR=0.0.0.0:8080
RUST_LOG=info

# Frontend
VITE_API_URL=http://localhost:8080

# MCP Server
MCP_SERVER_PORT=8090

مستويات السجل ​

يستخدم OpenPR حزمة tracing للتسجيل المهيكل. اضبط RUST_LOG للتحكم في التفصيل:

المستوىالوصف
errorالأخطاء فقط
warnالأخطاء والتحذيرات
infoرسائل التشغيل العادية (الافتراضي)
debugمعلومات تصحيح مفصلة
traceتفصيلي جداً، يشمل جميع العمليات الداخلية

التصفية لكل وحدة مدعومة:

bash
RUST_LOG=info,api=debug,mcp_server=trace

الخطوات التالية ​

Released under the Apache-2.0 License.