كيفية تثبيت DreamFactory Open Source على CentOS 7

DreamFactory هو برنامج مفتوح المصدر يمكنه تحويل أي قاعدة بيانات إلى منصة RESTful API.

يمكن نشر DreamFactory على منصات مختلفة. في هذه المقالة ، سنقوم بتثبيت DreamFactory Open Source Edition على خادم CentOS 7.

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

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

قم بتسجيل الدخول إلى النظام الخاص بك كمستخدم sudo من محطة SSH ، ثم قم بتحديث النظام على النحو التالي:

sudo yum install epel-release -y
sudo yum update -y
sudo shutdown -r now

الخطوة 2: تثبيت أباتشي

كما هو مطلوب من قبل DreamFactory ، تحتاج إلى تثبيت خادم الويب Apache باستخدام YUM:

sudo yum install httpd -y

إزالة صفحة ترحيب أباتشي الافتراضية:

sudo sed -i 's/^/#&/g' /etc/httpd/conf.d/welcome.conf

تعطيل دليل Apache العام وقائمة الملفات:

sudo sed -i "s/Options Indexes FollowSymLinks/Options FollowSymLinks/" /etc/httpd/conf/httpd.conf

ابدأ تشغيل خدمة Apache وتمكينها على تمهيد النظام:

sudo systemctl start httpd.service
sudo systemctl enable httpd.service

الخطوة 3: تثبيت MariaDB

في هذا البرنامج التعليمي ، سنستخدم MariaDB 10.1 كخادم قاعدة البيانات الذي سيستخدمه DreamFactory.

3.1 إعداد الريبو MariaDB 10.1 YUM

استخدم مقطع التعليمات البرمجية التالي لإنشاء الريبو MariaDB 10.1 YUM:

cat <<EOF | sudo tee -a /etc/yum.repos.d/MariaDB.repo
# MariaDB 10.1 CentOS repository list - created 2017-01-14 03:11 UTC
# http://downloads.mariadb.org/mariadb/repositories/
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.1/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
EOF

3.2 تثبيت MariaDB 10.1 باستخدام YUM

sudo yum install MariaDB-server MariaDB-client -y

3.3 بدء وتمكين خدمة MariaDB

sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service

3.4 تأمين تثبيت MariaDB

sudo /usr/bin/mysql_secure_installation

أجب عن الأسئلة على النحو التالي ، وتأكد من إدخال كلمة مرور الجذر MariaDB الخاصة بك.

  • أدخل كلمة المرور الحالية للجذر (أدخل بلا): فقط اضغط على Enterالزر
  • هل تريد تعيين كلمة مرور الجذر؟ [نعم / لا]:Y
  • كلمة سر جديدة: <your-password>
  • أعد إدخال كلمة المرور الجديدة: <your-password>
  • إزالة المستخدمين المجهولين؟ [نعم / لا]:Y
  • عدم السماح بتسجيل الدخول إلى الجذر عن بُعد؟ [نعم / لا]:Y
  • هل تريد إزالة قاعدة بيانات الاختبار والوصول إليها؟ [نعم / لا]:Y
  • إعادة تحميل جداول الامتيازات الآن؟ [نعم / لا]:Y

3.5 إنشاء قاعدة بيانات MariaDB لـ DreamFactory

قم بتسجيل الدخول إلى هيكل MySQL مثل root:

mysql -u root -p

أدخل كلمة مرور جذر MariaDB التي قمت بتعيينها في الخطوة 3.4 لتسجيل الدخول.

في هيكل MySQL shell ، أنشئ قاعدة dreamfactoryبيانات ومستخدمًا لقاعدة البيانات dreamfactoryuserوكلمة المرور الخاصة بها على yourpasswordالنحو التالي.

ملاحظة: لأغراض أمنية ، يجب عليك استبدال معلمات العينات الثلاثة المذكورة أعلاه بمعلماتك الخاصة.

CREATE DATABASE dreamfactory;
CREATE USER 'dreamfactoryuser'@'localhost' IDENTIFIED BY 'yourpassword';
GRANT ALL PRIVILEGES ON dreamfactory.* TO 'dreamfactoryuser'@'localhost' IDENTIFIED BY 'yourpassword' WITH GRANT OPTION;
FLUSH PRIVILEGES;
EXIT;

الخطوة 4: قم بتثبيت PHP 7.x و Composer

4.1 تثبيت PHP 7.1 والامتدادات الضرورية

في CentOS 7 ، يمكنك تثبيت PHP 7.1 وإضافات PHP اللازمة باستخدام Webtatic YUM repo:

sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
sudo yum install mod_php71w php71w-common php71w-cli php71w-gd php71w-mbstring php71w-mcrypt php71w-xml php71w-mysqlnd php71w-pecl-mongodb -y

4.2 تثبيت الملحن

قم بتثبيت أحدث إصدار من Composer ، وهو 1.3.1وقت كتابة هذا التقرير ، على النحو التالي.

ملاحظة: قد تتغير التعليمات أعلاه إذا قام الملحن بتحديث تعليمات التثبيت الخاصة به. على هذا النحو ، يجب عليك دائمًا مراجعة صفحة تنزيل الملحن الرسمية للحصول على أحدث تعليمات التثبيت.

cd
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('SHA384', 'composer-setup.php') === '55d6ead61b29c7bdee5cccfb50076874187bd9f21f65d8991d46ec5cc90518f447387fb9f76ebae1fbbacf329e583e30') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"

4.3 جعل الملحن متاحًا عالميًا

sudo mv composer.phar /usr/local/bin/composer

الخطوة 5: تثبيت Git و DreamFactory

5.1 تثبيت Git

sudo yum install git -y

5.2 تثبيت DreamFactory

قم بتنزيل أحدث إصدار ثابت من DreamFactory ، وهو 2.4.2وقت كتابة هذا المقال ، ثم قم بتثبيت DreamFactory والتبعيات على النحو التالي:

cd
wget https://github.com/dreamfactorysoftware/dreamfactory/archive/2.4.2.tar.gz
tar -zxvf 2.4.2.tar.gz
cd dreamfactory-2.4.2
composer install --no-dev
sudo mv ~/dreamfactory-2.4.2 /opt
sudo chown -R root:root /opt/dreamfactory-2.4.2
sudo chown -R apache:apache /opt/dreamfactory-2.4.2/storage/ /opt/dreamfactory-2.4.2/bootstrap/cache/
sudo chmod -R 2775 /opt/dreamfactory-2.4.2/storage/ /opt/dreamfactory-2.4.2/bootstrap/cache/
cd /opt/dreamfactory-2.4.2

استخدم الأمر التالي لإنشاء .envملف لتخزين تكوينات DreamFactory:

sudo php artisan dreamfactory:setup

عند المطالبة ، أدخل إعدادات قاعدة البيانات على النحو التالي:

  Which database would you like to use for system tables? [sqlite]:
  [0] sqlite
  [1] mysql
  [2] pgsql
  [3] sqlsrv
 > 1

 Enter your mysql Host:
 > localhost

 Enter your database name:
 > dreamfactory

 Enter your database username:
 > dreamfactoryuser

 Enter your database password:
 > yourpassword

 Re-enter your database password:
 > yourpassword

 Enter your Database Port [3306]:
 > 3306

قم بتشغيل نفس الأمر مرة أخرى لإعداد المستخدم الإداري الأول:

sudo php artisan dreamfactory:setup

عند المطالبة ، أدخل بيانات الاعتماد على النحو التالي:

Creating the first admin user...

 Enter your first name:
 > John

 Enter your last name:
 > Doe

 Enter display name:
 > John Doe

 Enter your email address?:
 > [email protected]

 Choose a password:
 > <your-admin-password>

 Re-enter password:
  > <your-admin-password>

5.3 الاستعداد للوصول إلى الويب

قم بإعداد مضيف افتراضي لـ DreamFactory. استخدم مقطع التعليمات البرمجية التالي لإعداد مضيف ظاهري. تذكر لاستبدال قيم ServerAdmin، ServerName، ServerAlias، Errorlog، و CustomLogمع تلك الخاصة بك.

cat <<EOF | sudo tee -a /etc/httpd/conf.d/dreamfactory.conf
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot /opt/dreamfactory-2.4.2/public/
ServerName dreamfactory.example.com
ServerAlias www.dreamfactory.example.com
<Directory /opt/dreamfactory-2.4.2/public/>
Options FollowSymLinks
AllowOverride All
AllowOverride None
Require all granted
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^.*$ /index.php [L]
<LimitExcept GET HEAD PUT DELETE PATCH POST>
    Allow from all
</LimitExcept>
</Directory>
ErrorLog /var/log/httpd/dreamfactory.example.com-error_log
CustomLog /var/log/httpd/dreamfactory.example.com-access_log common
</VirtualHost>
EOF

أدخل تعديلاتك حيز التنفيذ من خلال إعادة تشغيل خدمة Apache:

sudo systemctl restart httpd.service

تعديل قواعد جدار الحماية للسماح بالوصول إلى الويب:

sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --reload

الخطوة 6: الوصول إلى DreamFactory

قم http://203.0.113.1بتوجيه متصفح الويب الخاص بك للوصول إلى DreamFactory ، ثم استخدم عنوان البريد الإلكتروني للمشرف وكلمة المرور التي قمت بتعيينها مسبقًا لتسجيل الدخول.

بهذا نختتم برنامجنا التعليمي. شكرا للقراءة.



Leave a Comment

نظرة ثاقبة على 26 أسلوبًا لتحليل البيانات الضخمة: الجزء الأول

نظرة ثاقبة على 26 أسلوبًا لتحليل البيانات الضخمة: الجزء الأول

نظرة ثاقبة على 26 أسلوبًا لتحليل البيانات الضخمة: الجزء الأول

6 أشياء شديدة الجنون حول نينتندو سويتش

6 أشياء شديدة الجنون حول نينتندو سويتش

يعرف الكثير منكم أن Switch سيصدر في مارس 2017 وميزاته الجديدة. بالنسبة لأولئك الذين لا يعرفون ، قمنا بإعداد قائمة بالميزات التي تجعل "التبديل" "أداة لا غنى عنها".

وعود التكنولوجيا التي لم يتم الوفاء بها بعد

وعود التكنولوجيا التي لم يتم الوفاء بها بعد

هل تنتظر عمالقة التكنولوجيا للوفاء بوعودهم؟ تحقق من ما تبقى دون تسليم.

وظائف طبقات معمارية مرجعية للبيانات الضخمة

وظائف طبقات معمارية مرجعية للبيانات الضخمة

اقرأ المدونة لمعرفة الطبقات المختلفة في بنية البيانات الضخمة ووظائفها بأبسط طريقة.

كيف يمكن للذكاء الاصطناعي نقل أتمتة العمليات إلى المستوى التالي؟

كيف يمكن للذكاء الاصطناعي نقل أتمتة العمليات إلى المستوى التالي؟

اقرأ هذا لمعرفة مدى انتشار الذكاء الاصطناعي بين الشركات الصغيرة وكيف أنه يزيد من احتمالات نموها ومنح منافسيها القدرة على التفوق.

CAPTCHA: ما هي المدة التي يمكن أن تظل تقنية قابلة للتطبيق للتميز بين الإنسان والذكاء الاصطناعي؟

CAPTCHA: ما هي المدة التي يمكن أن تظل تقنية قابلة للتطبيق للتميز بين الإنسان والذكاء الاصطناعي؟

لقد أصبح حل CAPTCHA صعبًا جدًا على المستخدمين في السنوات القليلة الماضية. هل ستكون قادرة على أن تظل فعالة في اكتشاف البريد العشوائي والروبوتات في المستقبل القريب؟

التفرد التكنولوجي: مستقبل بعيد للحضارة الإنسانية؟

التفرد التكنولوجي: مستقبل بعيد للحضارة الإنسانية؟

مع تطور العلم بمعدل سريع ، واستلام الكثير من جهودنا ، تزداد أيضًا مخاطر تعريض أنفسنا إلى تفرد غير قابل للتفسير. اقرأ ، ماذا يمكن أن يعني التفرد بالنسبة لنا.

التطبيب عن بعد والرعاية الصحية عن بعد: المستقبل هنا

التطبيب عن بعد والرعاية الصحية عن بعد: المستقبل هنا

ما هو التطبيب عن بعد والرعاية الصحية عن بعد وأثره على الأجيال القادمة؟ هل هو مكان جيد أم لا في حالة الوباء؟ اقرأ المدونة لتجد طريقة عرض!

هل تساءلت يومًا كيف يربح المتسللون الأموال؟

هل تساءلت يومًا كيف يربح المتسللون الأموال؟

ربما سمعت أن المتسللين يكسبون الكثير من المال ، لكن هل تساءلت يومًا كيف يجنون هذا النوع من المال؟ دعنا نناقش.

يتسبب التحديث الإضافي لنظام macOS Catalina 10.15.4 في حدوث مشكلات أكثر من حلها

يتسبب التحديث الإضافي لنظام macOS Catalina 10.15.4 في حدوث مشكلات أكثر من حلها

أصدرت Apple مؤخرًا macOS Catalina 10.15.4 تحديثًا تكميليًا لإصلاح المشكلات ولكن يبدو أن التحديث يتسبب في المزيد من المشكلات التي تؤدي إلى إنشاء أجهزة macOS. قراءة هذه المادة لمعرفة المزيد