تثبيت وإعداد Bench
تثبيت وإعداد Bench
Bench هو أداة سطر الأوامر لإدارة تطبيقات Frappe والمواقع.
التثبيت
إذا لم تكن قد قمت بتثبيت Bench، فاتبع دليل التثبيت. بعد التثبيت، يجب أن تكون قادرًا على تشغيل الأوامر التي تبدأ بـ bench.
قم بتشغيل الأمر التالي لاختبار تثبيتك:
$ bench --version
5.1.0
إنشاء دليل frappe-bench
لنقم بإنشاء مجلد المشروع الخاص بنا والذي سيحتوي على تطبيقاتنا ومواقعنا. قم بتشغيل الأمر التالي:
$ bench init frappe-bench
سيؤدي هذا إلى إنشاء دليل يُسمى frappe-bench في دليل العمل الحالي الخاص بك. سيقوم بما يلي:
* إنشاء بيئة Python افتراضية تحت دليل env.
* جلب وتثبيت تطبيق frappe كحزمة Python.
* تثبيت node modules لـ frappe.
* بناء الأصول الثابتة.
هيكل الدليل
.
├── Procfile
├── apps
│ └── frappe
├── config
│ ├── pids
│ ├── redis_cache.conf
│ ├── redis_queue.conf
│ └── redis_socketio.conf
├── env
│ ├── bin
│ ├── include
│ ├── lib
│ └── share
├── logs
│ ├── backup.log
│ └── bench.log
└── sites
├── apps.txt
├── assets
└── common_site_config.json
- env: بيئة Python الافتراضية
- config: ملفات التكوين لـ Redis و Nginx
- logs: ملفات السجلات لكل عملية (ويب، عامل)
- sites: دليل المواقع
- assets: الأصول الثابتة التي يتم تقديمها عبر Nginx في الإنتاج
- apps.txt: قائمة تطبيقات frappe المثبتة
- commonsiteconfig.json: تكوين الموقع المتاح في جميع المواقع
- apps: دليل التطبيقات
- frappe: دليل تطبيق Frappe
- Procfile: قائمة العمليات التي تعمل في التطوير
بدء خادم Bench
الآن بعد أن أنشأنا دليل frappe-bench الخاص بنا، يمكننا بدء خادم الويب Frappe عن طريق تشغيل الأمر التالي:
$ cd frappe-bench
$ bench start
سيؤدي هذا إلى بدء عدة عمليات بما في ذلك خادم ويب Python يعتمد على Gunicorn، وخوادم redis للتخزين المؤقت، وقائمة انتظار الوظائف و socketio pub-sub، والعاملين في الخلفية، وخادم node لـ socketio وخادم node لتجميع ملفات JS/CSS.
سيبدأ خادم الويب في الاستماع على المنفذ 8000 ولكن ليس لدينا أي مواقع بعد لتقديمها. خطوتنا التالية هي إنشاء تطبيقنا وإنشاء موقع سيتم تثبيت هذا التطبيق عليه.
تأكد من عدم إغلاق الطرفية التي يعمل فيها bench start. لتشغيل أوامر bench، أنشئ طرفية أخرى وانتقل إلى دليل frappe-bench.
أحسنت عملًا في متابعة البرنامج التعليمي حتى الآن!