القائمة الرئيسية

الصفحات

خطوات تثبيت ERPNext14 على سيرفر لينكس (Ubuntu 22) مع الشرح

 




نظام ERPNext هو نظام لإدارة وتخطيط موارد المنشآت ويحتوي على العديد من المميزات الأساسية التي تتواجد في أي نظام اخر فيه المحاسبة والمخازن والمبيعات والمشتريات و العملاء والموارد البشرية وكذلك نقاط البيع في هذه التدوينة سوف اتطرق لطريقة تثبيت نظام ERPNext آخر اصدار 

بالتفصيل وذلك على نظام اوبنتو Ubuntu  Linux    

في البداية  : يتطلب نظام ubutu 22 وذلك ان اصدار erpnext14 هو اخر اصدار ويتطلب بايثون 3.10 

العتاد (مواصفات جهاز الكمبيوتر او السيرفر المحلي ) يفضل الذاكرة ram  4  جيجا بايت وسعة القرص 20 جيجابايت  

لكن  بالإمكان استخدام  ذاكرة (رام ) 1 جيجا و سعة تخزين  10 جيجابايت او اقل نسبيا  في حالة استخدام خفيف (مستخدم واحد و  بيانات قليلة ) في الغالب متدرب او منشأة صغيرة جداً و  مستخدم واحد  

الخطوة (1)  : عمل  تحديثات النظام 

sudo apt-get update -y
sudo apt-get upgrade -y

الخطوة (2) : إضافة مستخدم لينكس وإعطائه الصلاحيات

sudo adduser [frappe-user]
usermod -aG sudo [frappe-user]
su [frappe-user]
cd /home/[frappe-user]

ملاحظة : استبدل ما بين القوس المربع بالاسم الذي تريد استخدمه

الخطوة(3) : تثبيت git

sudo apt-get install git

الخطوة (4) : تثبيت لغة بايثون و متطلبات لغة بايثون للإصدار 3.10

sudo apt-get install python3-dev python3.10-dev python3-setuptools python3-pip python3-distutils
الخطوة (5) : تثبيت البيئة الافتراضية (الوهمية ) لبايثون الإصدار 3.10

sudo apt-get install python3.10-venv

الخطوة (6) : تثبيت بعض المستودعات الضرورية
sudo apt-get install software-properties-common
الخطوة (7) : تثبيت الخادم / العميل لقواعد البيانات حيث ان النظام يستند على قواعد بيانات Mysql

sudo apt install mariadb-server mariadb-client
تثبيت redis-server

sudo apt-get install redis-server

الخطوة (8) : تثبيت wkhtmlpdf الخاص ب التعامل مع صفحات html و pdf كذلك مكتبات mysql

sudo apt-get install xvfb libfontconfig wkhtmltopdf
sudo apt-get install libmysqlclient-dev
الخطوة (9) : ضبط حماية قواعد بيانات mysql من خلال الامر التالي

sudo mysql_secure_installation
  • اتبع هذه الخطوات الهامة 

  • Enter current password for root: (Enter your SSH root user password)
  • سيطلب منك ادخال كلمة مرور root  اتركها فارغة واضغط  إدخال
  • Switch to unix_socket authentication [Y/n]: Y
  • قم باختبار نعم 
  • Change the root password? [Y/n]: Y
  • تغيير كلمة المرور اضغط نعم 
  • الان عليك بعمل كلمة مرور لقواعد البيانات (تذكرها مهمة جدا للقيام بعمليات كثيرة في erpnext  مثل النسخ الاحتياطي والاستعادة )
  • Remove anonymous users? [Y/n] Y 
  • حذف المستخدم المجهول نعم
  • Disallow root login remotely? [Y/n]: N
  • تعطيل الوصول ل root عن بعد لا (ويفضل نعم )
  • Remove test database and access to it? [Y/n]: Y
  • حذف قاعدة بيانات test نعم 
  • Reload privilege tables now? [Y/n]: Y
  • إعادة تحميل نعم 
الخطوة (10) : تعديل ملف التكوين (config) لقواعد البيانات 
sudo nano /etc/mysql/my.cnf
اضف الاسطر التالية في آخر الملف

[mysqld]
character-set-client-handshake = FALSE
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci

[mysql]
default-character-set = utf8mb4
لا تنس حفظ التعديلات

ثم إعادة تشغيل mysql
sudo service mysql restart
الخطوة (11) : تثبيت أداة curl التي تتيح لك تنزيل الملفات الضرورية الى السيرفر من روابط أخرى
sudo apt install curl
الخطوة (12) : تنزيل وتثبيت nvm
curl https://raw.githubusercontent.com/creationix/nvm/master/install.sh | bash

source ~/.profile

nvm install 16.15.0
  تثبيت : npm
sudo apt-get install npm
تثبيت : yarn

sudo npm install -g yarn
الخطوة (13) : تثبيت frappe-bench

sudo pip3 install frappe-bench

ثم تهيئة erpnext14

bench init --frappe-branch version-14 frappe-bench
بعد ذلك الدخول على الدليل  frappe-bench 

cd frappe-bench

إعطاء الصلاحيات الكاملة للمستخدم (حسب التسمية في الخطوات الأولى)

chmod -R o+rx /home/[frappe-user]
الأن نقوم بإنشاء موقع جديد مثلا [site1.local] استبدلها بدل site-name

bench new-site [site-name]
تنزيل مديول المدفوعات 

bench get-app payments
تنزيل erpnext14 ملاحظة : يجب تنزيل الموديل السابق payments حتى لا تصادف أخطاء اثناء التثبيت

bench get-app --branch version-14 erpnext
مديول الموارد البشرية (اختياري)  يمكن تجاوزه

bench get-app hrms
تثبيت تطبيقات erpnext

bench --site [site-name] install-app erpnext
تثبيت تطبيق (مديول الموارد البشرية ) ويمكن تجاوزه

bench --site [site-name] install-app hrms

اعداد production 

sudo bench setup production [frappe-user]

الخطوة (14) تثبيت وإعداد سيرفر انجنكس (nginx)

bench setup nginx

الخطوة (15 ) إعداد و اعادة تشغيل الخدمات لضمان عمل erpnext

sudo supervisorctl restart all
sudo bench setup production [frappe-user]
يمكنك الان من خلال المتصفح الدخول على النظام 

 - في حالة سيرفر عالمي من خلال الايبي الخاص بالسيرفر   http://yourIP:8000
 - في حالة سيرفر محلي http://localhost:8000
 - في حالة الجدران النارية مفعله اضف استثناء للمنفذ من خلال الامر 
sudo ufw allow 8000/tcp








تعليقات

تعليقان (2)
إرسال تعليق
  1. غير معرف12/05/2022 12:09 ص

    مشكور على العمل الجميل لكن هنالك خطوة نافصه وهي تثبيت redis-server
    الرجاء تعديل
    sudo apt-get install git python3-dev python3.10-dev python3-setuptools python3-pip python3-distutils redis-server -y

    ردحذف
    الردود
    1. خطوة تثبيت redis-server سقطت سهواً عند كتابة الخطوات و تم التعديل
      شكراً لك

      حذف

إرسال تعليق