Redmine یک ابزار بسیار مناسب تحت وب جهت مدیریت پروژه های شماست که با فریم ورک Ruby on Rails نوشته شده است. Redmine متن باز با به اصطلاح open source بوده و تحت لایسنس GPL می باشد و به صورت cross-platform و cross-database طراحی شده است.
ما در این آموزش قصد داریم به شیوه نصب این مدیر پروژه قدرتمند در سرورهای پایدار دبین بپردازیم. توصیه میکنیم جهت پایداری بهتر جهت عدم مواجه شدن با برخی از ارورها حتما از پایگاه داده postgresql استفاده نمائید. روش های گوناگونی برای نصب redmine وجود دارد که ما در این آموزش به نصب از روی سورس اصلی می پردازیم.
ابتدا ترمینال را باز کرده و بسته های پیش نیاز را به صورت زیر نصب نمائید:
1 |
root@arshatech:# apt install gcc build-essential zlib1g zlib1g-dev zlibc ruby-zip libssl-dev libyaml-dev libcurl4-openssl-dev ruby gem libapache2-mod-passenger apache2 apache2-dev libapr1-dev libxslt1-dev checkinstall libxml2-dev ruby-dev vim libmagickwand-dev imagemagick rails |
پس از نصب موفقیت آمیز بسته های مورد نظر حال می بایست پایگاه داده postgresql را نصب نمائید:
1 |
root@arshatech:# apt install postgresql postgresql-server-dev-9.6 |
سپس به مسیر opt/ رفته و سورس را در دانلود نمائید و سپس از حالت فشرده خارج نمائید:
1 2 3 4 5 |
root@arshatech:# cd /opt root@arshatech:# mkdir redmine root@arshatech:# cd redmine root@arshatech:# wget http://www.redmine.org/releases/redmine-3.4.6.tar.gz root@arshatech:# tar xvzf redmine-3.4.6.tar.gz |
سپس در پایگاه داده postgresql وارد شوید:
1 2 3 4 5 6 |
root@arshatech:# su - postgres postgres@arshatech:~$ psql postgres psql (9.6.10) Type "help" for help. postgres=# |
و سپس یک یوزر به همراه نقش و رمز عبور دلخواه برای کاربر تعریف نمائید:
1 2 |
postgres=# CREATE ROLE redmine LOGIN ENCRYPTED PASSWORD 'your_password' NOINHERIT VALID UNTIL 'infinity'; postgres=# CREATE DATABASE redmine WITH ENCODING='UTF8' OWNER=redmine; |
سپس با دو بار زدن کلیدهای ترکیبی Ctrl+D از محیط postgres خارج شوید.
در مرحله بعد با استفاده از یک ویرایشگر متن به مسیر زیر رفته و عبارت مورد نظر را به انتهای آن بیافزایید:
1 |
root@arshatech:# vim /etc/postgresql/9.6/main/pg_hba.conf |
1 |
"local all postgres trust " |
در انتها postgres را ریلود نمائید:
1 |
root@arshatech:# service postgresql reload |
سپس با استفاده از یک ویرایشگر متن به مسیر زیر رفته و عبارات مورن نظر را در آن وارد کنید:
1 |
root@arshatech:# vim /opt/redmine/redmine-3.4.6/config/database.yml |
1 2 3 4 5 6 |
production: adapter: postgresql database: redmine host: localhost username: redmine password: your_password |
توجه نمائید که اطلاعات وارد شده در این بخش باید با اطلاعات دیتابیس شما همخوانی داشته باشد. همچنین در خط دوم به بعد از تب استفاده نکنید و صرفا استفاده از دو space یا فاصله کافیست.
در مرحله بعد به مسیر زیر رفته و از طریق bundle دیتابیس را نصب و راه اندازی نمائید:
1 2 3 4 5 |
root@arshatech:# cd /opt/redmineredmine-3.4.6/ root@arshatech:/opt/redmineredmine-3.4.6/# bundle install root@arshatech:/opt/redmineredmine-3.4.6/# bundle exec rake generate_secret_token root@arshatech:/opt/redmineredmine-3.4.6/# RAILS_ENV=production bundle exec rake db:migrate root@arshatech:/opt/redmineredmine-3.4.6/# RAILS_ENV=production bundle exec rake redmine:load_default_data |
در این مرحله redmine نصب شده است و میتوانید به صورت سریع صحت آن را بررسی کنید:
1 |
root@arshatech:/opt/redmine/redmineredmine-3.4.6/# bundle exec ruby /usr/bin/rails server -b <your-ip-address> webrick -e production |
بعد از زدن دستور فوق بدون اینکه ترمینال را ببندید میتوانید پنل خود را در مرورگر به صورت زیر صدا بزنید:
1 |
http://your-ip-address:3000 |
در این روش در صورتی که ترمینال بسته شود پنل وب redmine دیگر در دسترس شما نخواهد بود. برای جلوگیری از این امر آپاچی را کانفیگ میکنیم. پس با استفاده از Ctrl+C پروسه اجرای redmine را در ترمینال بسته و دستورات زیر را اجرا نمائید:
1 2 3 4 5 |
root@arshatech:# cd /opt/ root@arshatech:/opt/# chown -R www-data:www-data /opt/redmine root@arshatech:/opt/redmine/redmine-3.4.6/# cd /opt/redmine/redmine-3.4.6 root@arshatech:/opt/redmine/redmine-3.4.6/# chmod -R 755 files log tmp public/plugin_assets root@arshatech:/opt/redmine/redmine-3.4.6/# chown www-data:www-data Gemfile.lock |
در مرحله بعد یک سیمبلیک لینک جهت اشاره به دایرکتوری عمومی redmine بسازید:
1 |
root@arshatech:# ln -s /opt/redmine/redmine-3.4.6/public/ /var/www/html/redmine |
سپس به مسیر رفته و عبارات مورد نظر را در آن وارد نمائید:
1 |
root@arshatech:# vim /etc/apache2/sites-available/master.conf |
1 2 3 4 5 6 7 8 9 10 11 12 13 |
<VirtualHost *:80> ServerAdmin admin@example.com Servername hostname DocumentRoot /var/www/html/ <Location /redmine> RailsEnv production RackBaseURI /redmine Options -MultiViews </Location> </VirtualHost> |
سپس دستورات زیر را در ترمینال وارد نمائید:
1 2 |
root@arshatech:# a2dissite 000-default.conf root@arshatech:# a2ensite master.conf |
در مرحله بعد به مسیر زیر بروید:
1 |
root@arshatech:# vim /etc/apache2/mods-available/passenger.conf |
و عبارت مورد نظر را در بدنه داکیومنت به صورت زیر وارد کنید:
1 |
PassengerUser www-data |
محتوای شما به صورت زیر خواهد بود:
1 2 3 4 5 |
<IfModule mod_passenger.c> PassengerRoot /usr/lib/ruby/vendor_ruby/phusion_passenger/locations.ini PassengerDefaultRuby /usr/bin/ruby PassengerUser www-data </IfModule> |
حال کافیست آپاچی را ری استارت نمائید:
1 |
root@arshatech:# service apache2 restart |
و در انتها با وارد کردن آدرس آی پی به صورت زیر در مرورگر صفحه اصلی redmine را مشاهده خواهید کرد:
1 |
http://your-ip-address/redmine |