recent
أخبار ساخنة

شرح تثبيت وإعداد Etherpad للكتابة على Ubuntu ... بالخطوات ... فيديو

الصفحة الرئيسية

شرح تثبيت وإعداد  Etherpad للكتابة  على Ubuntu  ...  بالخطوات

Etherpad

هو عبارة عن محرر يستند إلى الويب (web-based) يسمح للكتاب بتعديل مستند نصي في نفس الوقت ومراقبة جميع عمليات التحرير في الوقت الفعلي.

إنه مفتوح المصدر (open-source) وقابل للتخصيص ويمكنه عرض نص كل مؤلف باللون الخاص به.

واجهة برمجة تطبيقات HTTP يمكنك دمجها مع تطبيقاتك لإدارة المستخدمين والمجموعات.

يوفر العديد من المكونات الإضافية التي تساعدك على دمج إشعارات البريد الإلكتروني وتحميل الملفات ومكالمات الفيديو في Etherpad.

سنشرح هنا تثبيت محرر Etherpad المستند إلى الويب على خادم Ubuntu 20.04.

المتطلبات الأساسية

خادم يعمل بنظام التشغيل Ubuntu 20.04.

اسم مجال (domain name) صالح يشير إلى عنوان IP الخاص بالخادم.

كلمة مرور الـ root للخادم.

مشاهدة خطوات  تثبيت وإعداد  Etherpad




الخطوات

قم بتحديث حزم النظام إلى أحدث إصدار.

يمكنك تحديثها عن طريق تشغيل الأمر التالي:

apt-get update -y


ستحتاج إلى تثبيت بعض التبعيات في نظامك.

يمكنك تثبيت كل منهم بالأمر التالي:

apt-get install gnupg2 git unzip libssl-dev pkg-config gcc g++ make build-essential -y

تثبيت وإعداد قاعدة بيانات MariaDB

يستخدم Etherpad قاعدة بيانات MariaDB كخلفية لقاعدة البيانات.

سوف تحتاج إلى تثبيت خادم MariaDB في نظامك. يمكنك تثبيته بالأمر التالي:

apt-get install mariadb-server -y


قم بتسجيل الدخول إلى MariaDB shell باستخدام الأمر التالي:

mysql


قم بإنشاء قاعدة بيانات ومستخدم لـ Etherpad بالأمر التالي:

MariaDB [(none)]> create database etherpad;

MariaDB [(none)]> grant all privileges on etherpad.* to etherpad@localhost identified by 'password';


امسح الصلاحيات واخرج من MariaDB باستخدام الأمر التالي:

MariaDB [(none)]> flush privileges;

MariaDB [(none)]> exit;

تثبيت Node.js

يعتمد Etherpad على Node.js.

سوف تحتاج إلى إضافة مستودع Node.js إلى نظامك. 

يمكنك إضافته بالأمر التالي:

curl -sL https://deb.nodesource.com/setup_14.x -o nodesource_setup.sh

bash nodesource_setup.sh


قم بتثبيت Node.js باستخدام الأمر التالي:

apt-get install nodejs -y


تحقق من الإصدار المثبت من Node.js باستخدام الأمر التالي:

node -v


ستحصل على النتيجة التالية:

v14.15.0


تثبيت وإعداد Etherpad

قم بإنشاء مستخدم جديد لـ Etherpad بالأمر التالي:

adduser --home /opt/etherpad --shell /bin/bash etherpad


سيُطلب منك تعيين كلمة مرو:

Adding user `etherpad' ...

Adding new group `etherpad' (1000) ...

Adding new user `etherpad' (1000) with group `etherpad' ...

Creating home directory `/opt/etherpad' ...

Copying files from `/etc/skel' ...

New password: 

Retype new password: 

passwd: password updated successfully

Changing the user information for etherpad

Enter the new value, or press ENTER for the default

Full Name []: Hitesh       

Room Number []: 1

Work Phone []: 

Home Phone []: 

Other []: 

Is the information correct? [Y/n] Y


قم بتقديم الأذونات المناسبة لدليل Etherpad الرئيسي باستخدام الأمر التالي:

install -d -m 755 -o etherpad -g etherpad /opt/etherpad


قم بتبديل المستخدم إلى Etherpad وقم بتنزيل أحدث إصدار من Etherpad من مستودع Git باستخدام الأمر التالي:

su - etherpad

git clone --branch master https://github.com/ether/etherpad-lite.git


قم بتغيير المجلد إلى المجلد الذي تم تنزيله وقم بتشغيل Etherpad باستخدام الأمر التالي:

cd etherpad-lite

bin/run.sh


سيؤدي هذا إلى تثبيت جميع التبعيات وبدء تشغيل خادم Etherpad.

بمجرد بدء تشغيل الخادم بنجاح ستحصل على النتيجة التالية:

[2020-11-11 06:46:44.783] [INFO] console - Your Etherpad version is 1.8.6 (2c8769a)

[2020-11-11 06:46:44.958] [INFO] console - You can access your Etherpad instance at http://0.0.0.0:9001/

[2020-11-11 06:46:44.958] [WARN] console - Admin username and password not set in settings.json.  To access admin please uncomment and edit 'users' in settings.json

[2020-11-11 06:46:44.958] [WARN] console - Etherpad is running in Development mode.  This mode is slower for users and less secure than production mode.  You should set the NODE_ENV environment variable to production by using: export NODE_ENV=production


اضغط على CTRL + C لإيقاف الخادم.

ستحتاج إلى تعديل ملف settings.json وتحديد قاعدة البيانات وإعدادات المسؤول (admin):

nano settings.json


قم بإزالة الأسطر التالية:

"dbType" : "dirty",

  "dbSettings" : {

                   "filename" : "var/dirty.db"

                 },


قم بتغيير إعدادات MySQL كما هو موضح أدناه:

  "dbType" : "mysql",

  "dbSettings" : {

    "user":     "etherpad",

    "host":     "localhost",

    "port":     3306,

    "password": "password",

    "database": "etherpad",

    "charset":  "utf8mb4"

  },


غيّر سطر TrustProxy إلى true:

  "trustProxy": true,


ادخل كلمة مرور للمستخدم المسؤول (admin):

  "users": {

    "admin": {

      "password": "adminpassword",

      "is_admin": true

    },


احفظ وأغلق الملف.

ثبّت التبعيات المطلوبة بالأمر التالي:

./bin/installDeps.sh


اخرج من مستخدم Etherpad بالأمر التالي:

exit


ستحتاج إلى إنشاء ملف خدمة systemd لإدارة خدمة Etherpad. يمكنك إنشائه بالأمر التالي:

nano /etc/systemd/system/etherpad.service


أضف الأسطر التالية:

[Unit]

Description=Etherpad-lite, the collaborative editor.

After=syslog.target network.target

[Service]

Type=simple

User=etherpad

Group=etherpad

WorkingDirectory=/opt/etherpad/etherpad-lite

Environment=NODE_ENV=production

ExecStart=/usr/bin/node /opt/etherpad/etherpad-lite/src/node/server.js

Restart=always

[Install]

WantedBy=multi-user.target


احفظ الملف وأغلقه.

أعد تحميل برنامج systemd daemon عن طريق تشغيل الأمر التالي:

systemctl daemon-reload


ابدأ خدمة Etherpad وقم بتمكينها من البدء عند إعادة تشغيل النظام باستخدام الأمر التالي:

systemctl start etherpad

systemctl enable etherpad


تحقق من حالة خدمة Etherpad باستخدام الأمر التالي:

systemctl status etherpad


سترى النتيجة التالية:

? etherpad.service - Etherpad-lite, the collaborative editor.

     Loaded: loaded (/etc/systemd/system/etherpad.service; disabled; vendor preset: enabled)

     Active: active (running) since Wed 2020-11-11 06:50:49 UTC; 4s ago

   Main PID: 12269 (node)

      Tasks: 13 (limit: 4691)

     Memory: 119.1M

     CGroup: /system.slice/etherpad.service

             ??12269 /usr/bin/node /opt/etherpad/etherpad-lite/src/node/server.js

إعداد Nginx لـ Etherpad

يتم بدء تشغيل Etherpad والاستماع على المنفذ 9001.

ستحتاج إلى تثبيت Nginx وإعداده كوكيل عكسي (reverse proxy) للوصول إلى Etherpad.

 قم بتثبيت Nginx بالأمر التالي:

apt install nginx -y


أنشئ ملف Nginx virtual host جديد باستخدام الأمر التالي:

nano /etc/nginx/sites-available/etherpad.conf


أضف الأسطر التالية:

upstream etherpad {

   server localhost:9001;

   keepalive 32;

}

server {

   listen 80;

   server_name etherpad.mydomain.com;

   location / {

       client_max_body_size 50M;

       proxy_set_header X-Real-IP $remote_addr;

       proxy_http_version 1.1;

       proxy_pass http://etherpad;

   }

}


احفظ وأغلق الملف.

قم بتنشيط ملف Nginx virtual host بالأمر التالي:

ln -s /etc/nginx/sites-available/etherpad.conf /etc/nginx/sites-enabled/


تحقق من Nginx بحثًا عن أي خطأ:

nginx -t


ستحصل على النتيجة التالية:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok

nginx: configuration file /etc/nginx/nginx.conf test is successful


أعد تشغيل خدمة Nginx لتطبيق التغييرات:

systemctl restart nginx


يمكنك أيضًا التحقق من حالة Nginx باستخدام الأمر التالي:

systemctl status nginx


ستحصل على النتيجة التالية:

? nginx.service - A high performance web server and a reverse proxy server

     Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)

     Active: active (running) since Wed 2020-11-11 06:53:44 UTC; 6s ago

       Docs: man:nginx(8)

    Process: 12984 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS)

    Process: 12985 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS)

   Main PID: 13001 (nginx)

      Tasks: 3 (limit: 4691)

     Memory: 3.5M

     CGroup: /system.slice/nginx.service

             ??13001 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;

             ??13002 nginx: worker process

             ??13003 nginx: worker process

Nov 11 06:53:44 ubuntu2004 systemd[1]: Starting A high performance web server and a reverse proxy server...

Nov 11 06:53:44 ubuntu2004 systemd[1]: Started A high performance web server and a reverse proxy server.


الوصول إلى Etherpad

افتح متصفح الويب واكتب العنوان http://etherpad.mydomain.com.

ستتم إعادة توجيهك إلى الصفحة التالية:



أدخل اسم صفحتك واضغط OK.

يجب أن ترى Etherpad dashboard الخاصة بك في الصفحة التالية:



google-playkhamsatmostaqltradent