كيفية تثبيت Kanboard على CentOS 7

Kanboard هو برنامج مجاني ومفتوح المصدر لإدارة المشاريع تم تصميمه لتسهيل وتصور سير عمل الفريق باستخدام منهجية Kanban.

في هذه المقالة ، سأوضح لك كيفية إعداد Kanboard على CentOS 7.

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

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

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

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

بعد إعادة التشغيل ، قم بتسجيل الدخول كمستخدم sudo نفسه وانتقل إلى الخطوة التالية.

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

قم بتثبيت خادم الويب Apache 2.4 لـ Kanboard باستخدام YUM:

sudo yum install httpd -y

إزالة صفحة ترحيب أباتشي المعدة مسبقًا:

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

منع أباتشي من كشف الملفات للزوار:

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

ابدأ خدمة أباتشي:

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

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

بشكل افتراضي ، يستخدم Kanboard SQLite لتخزين بياناته. بدلاً من ذلك ، يمكنك اختيار MariaDB 10 أو أعلى لتحسين الأداء في بيئة الإنتاج.

انسخ مقطع الشفرة التالي إلى طرف SSH ، ثم اضغط Enterلاستيراد ملف الريبو:

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

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

sudo yum install MariaDB-server MariaDB-client -y

ابدأ خدمة MariaDB:

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

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

sudo /usr/bin/mysql_secure_installation

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

Enter current password for root (enter for none): Enter
Set root password? [Y/n]: Y
New password: <your-password>
Re-enter new password: <your-password>
Remove anonymous users? [Y/n]: Y
Disallow root login remotely? [Y/n]: Y
Remove test database and access to it? [Y/n]: Y
Reload privilege tables now? [Y/n]: Y

الخطوة 4: تثبيت PHP 7

يتطلب Kanboard PHP 5.3.9 أو أعلى. من أجل الحصول على أفضل أداء ، يمكنك تثبيت PHP 7.1 وتبعياته الضرورية باستخدام Webtatic YUM repo كما يلي:

sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
sudo yum install php71w php71w-mysqlnd php71w-gd php71w-mbstring php71w-common php71w-ldap php71w-opcache php71w-cli -y

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

قم بتنزيل وتثبيت أحدث إصدار من Kanboard:

cd /var/www/html
sudo wget https://kanboard.net/kanboard-latest.zip
sudo yum install unzip -y
sudo unzip kanboard-latest.zip
sudo chown -R apache:apache kanboard/data
sudo rm kanboard-latest.zip

قم بإعداد قاعدة بيانات MySQL ومستخدم قاعدة بيانات لـ Kanboard:

mysql -u root -p -e "CREATE DATABASE kanboard;" 
mysql -u root -p kanboard < /var/www/html/kanboard/app/Schema/Sql/mysql.sql
mysql -u root -p -e "CREATE USER 'kanboarduser'@'localhost' IDENTIFIED BY 'yourpassword';"
mysql -u root -p -e "GRANT ALL PRIVILEGES ON kanboard.* TO 'kanboarduser'@'localhost' IDENTIFIED BY 'yourpassword' WITH GRANT OPTION;"
mysql -u root -p -e "FLUSH PRIVILEGES;"

ملحوظة:

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

قم بتحديث ملف تكوين Kanboard للتبديل إلى MySQL:

cd /var/www/html/kanboard
sudo mv config.default.php config.php
sudo vi config.php

ابحث عن الأسطر التالية:

// Database driver: sqlite, mysql or postgres (sqlite by default)
define('DB_DRIVER', 'sqlite');

// Mysql/Postgres username
define('DB_USERNAME', 'root');

// Mysql/Postgres password
define('DB_PASSWORD', '');

// Mysql/Postgres hostname
define('DB_HOSTNAME', 'localhost');

// Mysql/Postgres database name
define('DB_NAME', 'kanboard');

تعديلها وفقًا لما يلي:

// Database driver: sqlite, mysql or postgres (sqlite by default)
define('DB_DRIVER', 'mysql');

// Mysql/Postgres username
define('DB_USERNAME', 'kanboarduser');

// Mysql/Postgres password
define('DB_PASSWORD', 'yourpassword');

// Mysql/Postgres hostname
define('DB_HOSTNAME', 'localhost');

// Mysql/Postgres database name
define('DB_NAME', 'kanboard');

أعد تشغيل Apache:

 sudo systemctl restart httpd.service

السماح للزوار بالوصول إلى Kanboard على المنفذ 80:

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

أخيرًا ، وجّه متصفح الويب http://203.0.113.1/kanboardلبدء استخدام Kanboard. استخدم بيانات الاعتماد الافتراضية التالية لتسجيل الدخول:

  • اسم المستخدم: admin
  • كلمه السر: admin

ملاحظة: لأغراض أمنية ، تذكر تعديل كلمة مرور المسؤول باستخدام users managementالرابط من القائمة المنسدلة العليا اليسرى للمشرف.

الخطوة 6 (اختياري): إعداد Zend OpCache

من أجل تحقيق أفضل أداء على خادم Kanboard ، يمكنك ضبط إعدادات Zend OpCache التي تم تمكينها افتراضيًا.

على سبيل المثال ، عند استخدام Kanboard في إعداد عقدة واحدة في الإنتاج كما قصدنا في هذه المقالة ، يمكنك استخدام الإعدادات التالية كمبدئ لتحسين Zend OpCache.

افتح ملف تكوين Zend OpCache:

sudo vi /etc/php.d/opcache.ini

قم بتعديل الملف وفقًا للإعدادات التالية:

zend_extension=opcache.so;
opcache.enable=1;
opcache.file_cache=/tmp/opcache
opcache.validate_timestamps=0
opcache.revalidate_freq=0
opcache.memory_consumption=192
opcache.interned_strings_buffer=16
opcache.max_accelerated_files=1979
opcache.fast_shutdown=1

احفظ واخرج:

:wq!

أعد تشغيل خدمة Apache من أجل تنفيذ التغييرات الخاصة بك:

sudo systemctl restart httpd.service

في وقت لاحق ، يمكنك ضبط الإعدادات عن طريق تعديل الخطوط ذات الصلة في /etc/php.d/opcache.iniالملف مرة أخرى.

الخطوة 7 (اختياري): إعداد وظيفة cron يومية للتقارير والتحليلات

لإنشاء تقارير وتحليلات دقيقة ، تحتاج إلى إعداد مهمة يومية باستخدام apacheالمستخدم:

sudo crontab -u apache -e

تعبئة ملف crontab بـ:

0 3 * * * cd /var/www/html/kanboard && ./cli cronjob >/dev/null 2>&1

احفظ واخرج:

:wq!

بهذه الطريقة ، سيتم تحديث جميع التقارير والتحليلات الساعة 3:00 صباحًا كل يوم.

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

اترك تعليقاً

نظرة ثاقبة على 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. قراءة هذه المادة لمعرفة المزيد