SCROLL
Среднее время на прочтение: 4 мин.

Установка системы управления проектами Redmine 4.0.1 на Debian 9 Stretch

Разберем как установить систему управления проектами Redmine 4.0.1 на Debian 9 Stretch.

 

Подготовка системы

Перед началом установки обновляем систему до актуального состояния:

sudo apt-get update && sudo apt-get upgrade -y

 

Устанавливаем необходимые зависимости:

sudo apt-get install apache2 apache2-dev libapr1-dev libaprutil1-dev libapache2-mpm-itk mysql-server curl libapache2-mod-passenger default-libmysqlclient-dev libcurl4-openssl-dev ruby-rmagick libmagickwand-dev gnupg2 dirmngr -y

 

После установки зависимостей, необходимо выполнить настройку безопасности mysql:

sudo mysql_secure_installation

[stextbox id=’warning’]В ходе выполнения команды, будет заданы вопросы (смены пароля root, удаления анонимных учетных записей, отключения удаленного доступа для root, удаления тестовой базы данных, сброса привилегий)[/stextbox]

 

Установка RVM и Ruby

Для работы Redmine 4.0.1, необходимы компоненты Ruby 2.6 и Rails 5.2. Установим их и настроим подключение Ruby к apache.

 

Устанавливаем RVM (ruby version manager):

sudo su
gpg2 --keyserver hkp://pool.sks-keyservers.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
curl -L https://get.rvm.io | bash -s stable
exit

 

Пользователя admin, добавляем в группу rvm и выполняем рекомендованный скрипт:

sudo usermod admin -a -G rvm

 

Устанавливаем Ruby 2.6 и назначаем использование ее по-умолчанию:

cd /usr/local/rvm/
rvm install ruby-2.6-head
rvm use ruby-2.6-head --default

Устанавливаем необходимые гемы:

gem install rdoc
gem install rails -v 5.2.1
gem install bundler
gem install mysql2
gem install activeresource
gem install passenger

 

Устанавливаем passenger модуль для apache (для установки рекомендуется иметь 1024MB оперативной памяти в системе или более):

passenger-install-apache2-module

 

Сообщение ниже, свидетельствует об установки passenger и необходимости внесения изменений в модули passenger для apache. Завершаем установку, пару раз нажимая Enter.

Almost there!

Please edit your Apache configuration file, and add these lines:

LoadModule passenger_module /usr/local/rvm/gems/ruby-2.6-head/gems/passenger-6.0.1/buildout/apache2/mod_passenger.so
<IfModule mod_passenger.c>
     PassengerRoot /usr/local/rvm/gems/ruby-2.6-head/gems/passenger-6.0.1
     PassengerDefaultRuby /usr/local/rvm/gems/ruby-2.6-head/wrappers/ruby
</IfModule>

After you restart Apache, you are ready to deploy any number of web
applications on Apache, with a minimum amount of configuration!

[stextbox id=’warning’]Прошу обратить внимание, что на момент написания статьи модуль passenger для apache версии 6.0.1! при установке модуля, обращайте внимание какая версия passenger ставится и соответственно указывайте ее. [/stextbox]

 

Внесем требуемые изменение в файлы модулей.

 

В файле /etc/apache2/mods-available/passenger.load:

LoadModule passenger_module /usr/local/rvm/gems/ruby-2.6-head/gems/passenger-6.0.1/buildout/apache2/mod_passenger.so

В файле  /etc/apache2/mods-available/passenger.conf:

<IfModule mod_passenger.c> 
  PassengerRoot /usr/local/rvm/gems/ruby-2.6-head/gems/passenger-6.0.1 
  PassengerDefaultRuby /usr/local/rvm/gems/ruby-2.6-head/wrappers/ruby 
</IfModule>

 

Установка Ruby и необходимых модулей завершена, переходим к установке Redmine.

 

Установка и настройка Redmine

Скачиваем Redmine, распаковываем его и переходим в него:

cd /opt/
sudo wget http://www.redmine.org/releases/redmine-4.0.1.tar.gz
sudo tar -zxvf redmine-4.0.1.tar.gz
sudo mv redmine-4.0.1 redmine
cd redmine/

Изменяем права доступа на каталог redmine, для web-сервера и пользователей группы rvm:

sudo chown -R www-data:rvm /opt/redmine
sudo chmod -R 775 /opt/redmine

 

Устанавливаем все недостающие зависимости:

bundle install --without development test

 

Создаем базу данных и пользователя для Redmine:

sudo mysql -u root -p

CREATE DATABASE redmine CHARACTER SET utf8;
CREATE USER 'redmine'@'localhost' IDENTIFIED BY 'redmine';
GRANT ALL PRIVILEGES ON redmine.* TO 'redmine'@'localhost';
FLUSH PRIVILEGES;
EXIT

 

Копируем файл конфигурации базы данных и настраиваем его на использование созданной базы данных MySQL:

cp config/database.yml.example config/database.yml
nano config/database.yml

production:
adapter: mysql2
database: redmine
host: localhost
username: redmine
password: "redmine"

 

Генерируем уникальный идентификатор, выполняем миграцию базы данных, загружаем начальную конфигурацию:

bundler exec rake generate_secret_token
RAILS_ENV=production bundle exec rake db:migrate
RAILS_ENV=production REDMINE_LANG=ru bundle exec rake redmine:load_default_data

 

Создаем символьную ссылку каталога redmine и создаем виртуальный хост redmine:

sudo ln -s /opt/redmine /var/www/redmine
sudo nano /etc/apache2/sites-available/redmine.conf
<VirtualHost *:80>
      DocumentRoot /var/www/redmine/public

      LogLevel warn
      ErrorLog ${APACHE_LOG_DIR}/redmine_error.log
      CustomLog ${APACHE_LOG_DIR}/redmine_access.log combined
 
      RailsEnv production
      RailsBaseURI /

      <Directory /var/www/redmine/public>
            Options Indexes ExecCGI FollowSymLinks
            Options -MultiViews
            AllowOverride all
      </Directory>
</VirtualHost>

 

Отключаем сайт используемый по-умолчанию, включаем нами добавленный сайт redmine.conf, перезапускаем службу apache:

sudo a2dissite 000-default.conf
sudo a2ensite redmine.conf
sudo service apache2 restart

 

Теперь в браузере можно перейти по IP-адресу, где расположен Redmine и мы попадаем на приветственную страницу. Доступ в консоль по-умолчанию admin/admin.

 

Понравилась или оказалась полезной статья, поблагодари автора

 

Обсуждение

5 комментариев
  • Изменяем права доступа на каталог redmine, для web-сервера и пользователей группы rvm:
    sudo chown -R www-data:rvm /opt/redmine

    Кто эти люди и в какой момент они должны быть добавлены в систему????

    • Это ответ на комментарий Дмитрий

      Там людей нет, www-data (веб-сервер), rvm (ruby version manager), добавляются они в момент установки пакетов.

  • Делал копипаст и неработает ,, разобрался ,, passenger-6.0.2 версия ,, подправил и все ок ,, спс

  • Добрый день,

    А можно с вами как то связаться по телефону?

    Меня зовут Марат. Я занимаюсь проектом RedmineUP cloud.(https://www.redmineup.com/pages/ru/redmine-hosting-rf)

    Я заметил что на вашем блоге вы пишите о  Redmine и хотел с вами пообщаться и узнать как мы можем быть друг другу полезны.

    Если вы не против — пожалуйста сообщите номер телефона.

    • Это ответ на комментарий Марат

      Добрый день, ответил письмом на e-mail указанный у Вас в профиле.