Как установить и настроить Redmine на CentOS 8

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

Redmine — это бесплатное приложение с открытым исходным кодом для управления проектами и отслеживания проблем. Оно кроссплатформенное и кросс-базовое, построенное на фреймворке Ruby on Rails.

Redmine включает поддержку нескольких проектов, вики, систему отслеживания проблем, форумы, календари, уведомления по электронной почте и многое другое.

В этом руководстве объясняется, как установить и настроить последнюю версию Redmine на CentOS 8. Мы будем использовать MariaDB в качестве серверной части базы данных и Passenger + Apache в качестве сервера приложений Ruby.

Предпосылки

Убедитесь, что выполнены следующие предварительные условия:

Создание базы данных MySQL

Redmine поддерживает MySQL/MariaDB, Microsoft SQL Server, SQLite 3 и PostgreSQL . Мы будем использовать MariaDB в качестве серверной базы данных.

Если на вашем сервере CentOS не установлены MariaDB или MySQL, вы можете установить их, следуя этим инструкциям .

Войдите в оболочку MySQL, используя следующую команду:

 sudo mysql

В оболочке MySQL выполните следующие операторы SQL, чтобы создать новую базу данных , нового пользователя и предоставить пользователю доступ к базе данных :

 CREATE DATABASE redmine CHARACTER SET utf8; GRANT ALL ON redmine.* TO 'redmine'@'localhost' IDENTIFIED BY 'change-with-strong-password';

Обязательно измените change-with-strong-password на надежный пароль.

После этого выйдите из оболочки MySQL:

 EXIT;

Установка Passenger, Apache и Ruby

Passenger — это быстрый и лёгкий сервер веб-приложений для Ruby, Node.js и Python, интегрируемый с Apache и Nginx. Мы установим Passenger как модуль Apache.

Включить репозиторий EPEL :

 sudo dnf install epel-release sudo dnf config-manager --enable epel

После включения репозитория обновите список пакетов и установите Ruby, Apache и Passenger:

 sudo dnf install httpd mod_passenger passenger passenger-devel ruby

Запустите службу Apache и включите ее запуск при загрузке:

 sudo systemctl enable httpd --now

Создание нового системного пользователя

Создайте нового пользователя и группу с домашним каталогом /opt/redmine , которые будут запускать экземпляр Redmine:

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

Добавьте пользователя apache в группу redmine и измените права доступа к каталогу /opt/redmine чтобы Apache мог получить к нему доступ:

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

Установка Redmine

На момент написания статьи последней стабильной версией Redmine является версия 4.1.0.

Прежде чем продолжить, посетите страницу загрузки Redmine, чтобы узнать, доступна ли более новая версия.

Установите компилятор GCC и библиотеки, необходимые для сборки Redmine:

 sudo dnf group install "Development Tools" sudo dnf install zlib-devel curl-devel openssl-devel mariadb-devel ruby-devel

Убедитесь, что вы выполняете следующие шаги как пользователь redmine :

 sudo su - redmine

1. Загрузка Redmine

Загрузите архив Redmine с помощью curl :

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

После завершения загрузки распакуйте архив:

 tar -xvf redmine.tar.gz

2. Настройка базы данных Redmine

Скопируйте файл конфигурации примера базы данных Redmine:

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

Откройте файл с помощью текстового редактора:

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

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

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

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

После этого сохраните файл и выйдите из редактора.

3. Установка зависимостей Ruby

Перейдите в каталог redmine-4.1.0 и установите зависимости Ruby:

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

4. Сгенерируйте ключи и перенесите базу данных

Выполните следующую команду для генерации ключей и миграции базы данных:

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

Настройка Apache

Вернитесь к пользователю sudo и создайте следующий файл Apache vhost :

 exit sudo nano /etc/httpd/conf.d/example.com.conf

/etc/httpd/conf.d/example.com.conf

  *:80 > ServerName example.com ServerAlias www.example.com DocumentRoot /opt/redmine/redmine-4.1.0/public  /opt/redmine/redmine-4.1.0/public > Options Indexes ExecCGI FollowSymLinks Require all granted AllowOverride all  ErrorLog /var/log/httpd/example.com-error.log CustomLog /var/log/httpd/example.com-access.log combined 

Не забудьте заменить example.com на ваш домен Redmine.

Перезапустите службу Apache , введя:

 sudo systemctl restart httpd

Настройте Apache с SSL

Если у вас нет доверенного SSL-сертификата для вашего домена, вы можете создать бесплатный SSL-сертификат Let's Encrypt, следуя этим инструкциям .

После создания сертификата отредактируйте конфигурацию Apache следующим образом:

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

/etc/httpd/conf.d/example.com.conf

  *:80 > ServerName example.com ServerAlias www.example.com Redirect permanent / https://example.com/   *:443 > ServerName example.com ServerAlias www.example.com Protocols h2 http/1.1  "%{HTTP_HOST} == 'www.example.com'" > Redirect permanent / https://example.com/  DocumentRoot /opt/redmine/redmine-4.1.0/public ErrorLog /var/log/httpd/example.com-error.log CustomLog /var/log/httpd/example.com-access.log combined SSLEngine On SSLCertificateFile /etc/letsencrypt/live/example.com/fullchain.pem SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem  /opt/redmine/redmine-4.1.0/public > Options Indexes ExecCGI FollowSymLinks Require all granted AllowOverride all  

Не забудьте заменить example.com на ваш домен Redmine и указать правильный путь к файлам SSL-сертификата. Все HTTP-запросы будут перенаправляться на HTTPS .

Доступ к Redmine

Откройте браузер , введите свой домен, и если установка прошла успешно, появится экран, подобный следующему:

вход в Redmine

Учетные данные по умолчанию для входа в Redmine:

  • Имя пользователя: администратор
  • Пароль: администратор

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

redmine сменить пароль

После смены пароля вы будете перенаправлены на страницу учетной записи пользователя.

Если вы не можете получить доступ к странице, вероятно, ваш брандмауэр блокирует порты Apache.

Чтобы открыть необходимый порт, используйте следующие команды:

 sudo firewall-cmd --permanent --zone=public --add-port=443/tcp sudo firewall-cmd --permanent --zone=public --add-port=80/tcp sudo firewall-cmd --reload

Заключение

Вы успешно установили Redmine на свою систему CentOS. Теперь вам следует ознакомиться с документацией Redmine и узнать больше о настройке и использовании Redmine.

Если у вас возникла проблема или вы хотите оставить отзыв, оставьте комментарий ниже.

centos redmine ruby mysql mariadb apache Не используете CentOS 8?
Выберите другую ОС:
центос 7 дебиан 9 убунту 18.04

Связанные руководства

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *