ذكري المظهر

كيفية تثبيت وتكوين redmine على centos 7

مراجعة شاومي ريدمي نوت 8 - Redmi Note 8 Review | ورأينا الصريح في الجهاز

مراجعة شاومي ريدمي نوت 8 - Redmi Note 8 Review | ورأينا الصريح في الجهاز

جدول المحتويات:

Anonim

Redmine هي واحدة من أكثر أدوات إدارة المصادر المفتوحة للمشاريع وأدوات تتبع المشكلات. إنها منصة مشتركة وقاعدة بيانات مشتركة ومبنية على أعلى إطار عمل Ruby on Rails.

يتضمن Redmine دعمًا لمشاريع متعددة ، ويكي ، ونظام تتبع المشكلات ، والمنتديات ، والتقويمات ، وإشعارات البريد الإلكتروني ، وغير ذلك الكثير.

سنغطي في هذا البرنامج التعليمي الخطوات اللازمة لتثبيت أحدث إصدار من Redmine وتكوينه على خادم CentOS 7 باستخدام MariaDB كقاعدة بيانات خلفية و Passenger + Nginx كخادم تطبيق Ruby.

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

تأكد من أنك استوفيت الشروط التالية قبل المتابعة مع هذا البرنامج التعليمي:

  • اسم المجال مشيرا إلى خادم IP العام الخاص بك. في هذا البرنامج التعليمي ، سنستخدم example.com تسجيل الدخول كمستخدم له امتيازات sudo.

قم بتثبيت الحزم المطلوبة لبناء Redmine و Ruby من المصدر:

sudo yum install curl gpg gcc gcc-c++ make patch autoconf automake bison libffi-devel libtool sudo yum install readline-devel sqlite-devel zlib-devel openssl-develh readline glibc-headers glibc-devel sudo yum install mariadb-devel zlib libyaml-devel bzip2 iconv-devel ImageMagick ImageMagick-devel

إنشاء قاعدة بيانات MySQL

Redmine يدعم MySQL / MariaDB ، Microsoft SQL Server ، SQLite 3 و PostgreSQL. في هذا البرنامج التعليمي ، سنستخدم MariaDB كقاعدة بيانات خلفية.

إذا لم يكن لديك MariaDB أو MySQL مثبتًا على خادم CentOS ، فيمكنك تثبيته باتباع هذه الإرشادات.

تسجيل الدخول إلى قذيفة الخلية عن طريق كتابة الأمر التالي:

sudo mysql

من داخل MySQL shell ، قم بتشغيل عبارة SQL التالية لإنشاء قاعدة بيانات جديدة:

CREATE DATABASE redmine CHARACTER SET utf8;

بعد ذلك ، قم بإنشاء حساب مستخدم MySQL ومنح حق الوصول إلى قاعدة البيانات:

GRANT ALL ON redmine.* TO 'redmine'@'localhost' IDENTIFIED BY 'change-with-strong-password'; تأكد من تغيير change-with-strong-password مع كلمة مرور قوية.

بمجرد الانتهاء ، اخرج من قذيفة mysql بكتابة:

EXIT;

تثبيت الركاب و Nginx

Passenger هو خادم تطبيق ويب سريع وخفيف الوزن لـ Ruby و Node.js و Python يمكن دمجهما مع Apache و Nginx. سنقوم بتثبيت Passenger كوحدة Nginx.

قم بتثبيت مستودع EPEL والحزم المطلوبة:

sudo yum install epel-release yum-utils pygpgme sudo yum-config-manager --enable epel

تمكين مستودع Phusionpassenger:

sudo yum-config-manager --add-repo

بمجرد تمكين المستودع ، قم بتحديث قائمة الحزم وتثبيت كلاً من Nginx و Passenger باستخدام:

sudo yum install nginx passenger passenger-devel

إنشاء مستخدم جديد للنظام

إنشاء مستخدم جديد ومجموعة ، والتي ستقوم بتشغيل مثيل Redmine ، من أجل البساطة ، سنقوم بتسمية redmine للمستخدم:

sudo useradd -m -U -r -d /opt/redmine redmine

أضف مستخدم nginx إلى مجموعة المستخدمين الجديدة وقم بتغيير أذونات الدليل /opt/redmine حتى يتمكن Nginx من الوصول إليه:

sudo usermod -a -G redmine nginx sudo chmod 750 /opt/redmine

تثبيت روبي

إصدار Ruby في مستودعات CentOS قديم جدًا ولا يدعمه Redmine. سنقوم بتثبيت روبي باستخدام RVM.

قم بالتبديل إلى redmine المستخدم بكتابة:

sudo su - redmine

استيراد مفاتيح GPG وتثبيت RVM:

gpg --keyserver hkp://pool.sks-keyservers.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB curl -sSL https://get.rvm.io | bash -s stable curl -sSL https://get.rvm.io | bash -s stable

لبدء استخدام مصدر rvm ملف rvm :

source /opt/redmine/.rvm/scripts/rvm

الآن يمكننا تثبيت روبي عن طريق تشغيل:

rvm install 2.5 rvm --default use 2.5 إذا كنت تريد تثبيت Ruby عبر Rbenv ، فراجع هذا الدليل.

تثبيت Redmine على CentOS

في وقت كتابة هذا المقال ، أحدث إصدار ثابت من Redmine هو الإصدار 4.0.1.

قبل المتابعة مع الخطوات التالية ، يجب عليك التحقق من صفحة تنزيل Redmine لمعرفة ما إذا كان هناك إصدار أحدث متاح.

تأكد من تشغيل الخطوات التالية كمستخدم redmine .

1. تنزيل Redmine

قم بتنزيل أرشيف Redmine باستخدام الأمر curl التالي:

curl -L http://www.redmine.org/releases/redmine-4.0.1.tar.gz -o redmine.tar.gz

بمجرد اكتمال التنزيل ، استخرج الأرشيف:

tar -xvf redmine.tar.gz

2. تكوين قاعدة بيانات Redmine

نسخ ملف تكوين قاعدة بيانات المثال Redmine:

cp /opt/redmine/redmine-4.0.1/config/database.yml.example /opt/redmine/redmine-4.0.1/config/database.yml

افتح الملف باستخدام محرر النصوص الخاص بك:

nano /opt/redmine/redmine-4.0.1/config/database.yml

ابحث عن قسم production وأدخل قاعدة بيانات MySQL ومعلومات المستخدم التي أنشأناها مسبقًا:

/opt/redmine/redmine-4.0.1/config/database.yml

production: adapter: mysql2 database: redmine host: localhost username: redmine password: "change-with-strong-password" encoding: utf8

بمجرد الانتهاء من ذلك ، احفظ الملف واخرج من المحرر.

3. تثبيت تبعيات روبي

انتقل إلى دليل redmine-4.0.1 وقم بتثبيت المجمّع وتوابع تبعيات روبي الأخرى:

cd ~/redmine-4.0.1 gem install bundler --no-rdoc --no-ri bundle install --without development test postgresql sqlite

4. إنشاء مفاتيح وترحيل قاعدة البيانات

قم بتشغيل الأمر التالي لإنشاء المفاتيح وترحيل قاعدة البيانات:

bundle exec rake generate_secret_token RAILS_ENV=production bundle exec rake db:migrate

تكوين Nginx

العودة إلى مستخدم sudo الخاص بك:

exit

افتح محرر النصوص الخاص بك وقم بإنشاء ملف كتلة خادم Nginx التالي:

sudo nano /etc/nginx/conf.d/example.com.conf /etc/nginx/conf.d/example.com.conf

passenger_root /usr/share/ruby/vendor_ruby/phusion_passenger/locations.ini; passenger_ruby /opt/redmine/.rvm/gems/default/wrappers/ruby; passenger_instance_registry_dir /var/run/passenger-instreg; server { listen 80; server_name example.com www.example.com; root /opt/redmine/redmine-4.0.1/public; # log files access_log /var/log/nginx/example.com.access.log; error_log /var/log/nginx/example.com.error.log; passenger_enabled on; passenger_min_instances 1; client_max_body_size 10m; } لا تنسَ استبدال example.com بنطاق Redmine الخاص بك.

قبل إعادة تشغيل خدمة Nginx ، قم بإجراء اختبار للتأكد من عدم وجود أخطاء في بناء الجملة:

sudo nginx -t

إذا لم تكن هناك أخطاء ، فيجب أن يبدو الإخراج كما يلي:

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

أخيرًا ، أعد تشغيل خدمة Nginx بكتابة:

sudo systemctl restart nginx

تكوين Nginx مع SSL

بمجرد إنشاء الشهادة ، قم بتحرير تكوين Nginx للنطاق كما يلي:

sudo nano /etc/nginx/conf.d/example.com.conf /etc/nginx/conf.d/example.com

passenger_root /usr/share/ruby/vendor_ruby/phusion_passenger/locations.ini; passenger_ruby /opt/redmine/.rvm/gems/default/wrappers/ruby; passenger_instance_registry_dir /var/run/passenger-instreg; # Redirect HTTP -> HTTPS server { listen 80; server_name www.example.com example.com; include snippets/letsencrypt.conf; return 301 https://example.com$request_uri; } # Redirect WWW -> NON WWW server { listen 443 ssl http2; server_name www.example.com; ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem; include snippets/ssl.conf; return 301 https://example.com$request_uri; } server { listen 443 ssl http2; server_name example.com; root /opt/redmine/redmine-4.0.1/public; # SSL parameters ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem; include snippets/ssl.conf; include snippets/letsencrypt.conf; # log files access_log /var/log/nginx/example.com.access.log; error_log /var/log/nginx/example.com.error.log; passenger_enabled on; passenger_min_instances 1; client_max_body_size 10m; } لا تنسَ استبدال example.com بنطاق Redmine الخاص بك وتعيين المسار الصحيح لملفات شهادة SSL. سيتم إعادة توجيه جميع طلبات HTTP إلى

الوصول إلى Redmine

افتح المستعرض الخاص بك ، اكتب نطاقك وافترض أن التثبيت ناجح ، ستظهر شاشة مشابهة للشاشة التالية:

بمجرد تغيير كلمة المرور ، سيتم إعادة توجيهك إلى صفحة حساب المستخدم.

استنتاج

لقد قمت بتثبيت Redmine بنجاح على نظام CentOS الخاص بك. يجب عليك الآن التحقق من وثائق Redmine ومعرفة المزيد حول كيفية تكوين واستخدام Redmine.

سنتوس redmine روبي mysql mariadb nginx