التشغيل على خادم
يعمل Celerp دائمًا على أجهزتك الخاصة؛ فتطبيق سطح المكتب يحوّل حاسوبك إلى خادم بنقرة واحدة. وهذا الدليل مخصّص لتشغيله بدلًا من ذلك على خادم Linux منفصل ودائم التشغيل (خادم VPS أو خادم منزلي)، ليصل إليه مكتبك كله على مدار الساعة. ومسار pip install celerp نفسه المستخدم على سطح المكتب يعمل على أي خادم Linux.
المتطلبات
- Python 3.11+
- Postgres 14+ (قيد التشغيل وقابل للوصول)
- مستخدم لديه صلاحية
sudo(يحتاجهاcelerp initلإنشاء مستخدم وقاعدة بيانات Postgres)
التثبيت والتهيئة
pip install celerp
celerp init
أمر celerp init تفاعلي، وسيقوم بما يلي:
- طلب عنوان اتصال Postgres (أو قبول الافتراضي:
postgresql+asyncpg://celerp:celerp@localhost:5432/celerp) - إنشاء مستخدم وقاعدة بيانات Postgres (عبر
sudo -u postgres psql) - إنشاء سرّ JWT
- تشغيل الترحيلات
- كتابة ملف إعداد (
~/.celerp/config.toml)
بدء تشغيل الخادم
celerp start
يشغّل هذا عمليتين:
- خادم الواجهة البرمجية على المنفذ
8000 - خادم واجهة الاستخدام على المنفذ
8080
افتح http://your-server-ip:8080 في المتصفح للوصول إلى Celerp.
التشغيل كخدمة systemd
لإبقاء Celerp يعمل بعد تسجيل الخروج وبدء التشغيل تلقائيًا عند إعادة التشغيل:
sudo tee /etc/systemd/system/celerp.service <<EOF
[Unit]
Description=Celerp ERP
After=network.target postgresql.service
[Service]
Type=simple
User=$USER
ExecStart=$(which celerp) start
Restart=on-failure
RestartSec=5
[Install]
WantedBy=multi-user.target
EOF
sudo systemctl daemon-reload
sudo systemctl enable --now celerp
الوكيل العكسي (nginx + HTTPS)
لعرض Celerp على نطاق باستخدام HTTPS، مرِّر واجهة الاستخدام والواجهة البرمجية معًا عبر وكيل nginx:
server {
server_name erp.yourdomain.com;
# UI
location / {
proxy_pass http://localhost:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
}
# API
location /api/ {
proxy_pass http://localhost:8000/;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
}
listen 443 ssl;
ssl_certificate /etc/letsencrypt/live/erp.yourdomain.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/erp.yourdomain.com/privkey.pem;
}
استخدم Certbot للحصول على شهادة SSL مجانية.
الترقية
celerp upgrade
يشغّل هذا الأمر pip install --upgrade celerp ويطبّق أي ترحيلات معلّقة تلقائيًا.
تعدّد المستخدمين عبر الشبكة المحلية
إذا شغّلت Celerp على جهاز في شبكتك المحلية، يمكن للمستخدمين الآخرين على الشبكة نفسها الوصول إليه من متصفّحهم على http://your-machine-ip:8080. تأكّد من أن جدار الحماية لديك يسمح بالاتصالات الواردة على المنفذين 8000 و8080.