
Redmine — это бесплатное приложение с открытым исходным кодом для управления проектами и отслеживания проблем. Оно кроссплатформенное и кросс-базовое, построенное на фреймворке Ruby on Rails.
Redmine включает поддержку нескольких проектов, вики, систему отслеживания проблем, форумы, календари, уведомления по электронной почте и многое другое.
В этом руководстве объясняется, как установить и настроить последнюю версию Redmine на CentOS 8. Мы будем использовать MariaDB в качестве серверной части базы данных и Passenger + Apache в качестве сервера приложений Ruby.
Предпосылки
Убедитесь, что выполнены следующие предварительные условия:
- Доменное имя, указывающее на публичный IP-адрес вашего сервера.
- Вы вошли в систему как пользователь root или с привилегиями sudo .
Создание базы данных 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-releasesudo 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 apachesudo 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.0gem install bundler --no-rdoc --no-ribundle install --without development test postgresql sqlite --path vendor/bundle
4. Сгенерируйте ключи и перенесите базу данных
Выполните следующую команду для генерации ключей и миграции базы данных:
bundle exec rake generate_secret_tokenRAILS_ENV=production bundle exec rake db:migrate
Настройка Apache
Вернитесь к пользователю sudo и создайте следующий файл Apache vhost :
exitsudo 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:
- Имя пользователя: администратор
- Пароль: администратор
При первом входе в систему вам будет предложено сменить пароль, как показано ниже:

После смены пароля вы будете перенаправлены на страницу учетной записи пользователя.
Если вы не можете получить доступ к странице, вероятно, ваш брандмауэр блокирует порты Apache.
Чтобы открыть необходимый порт, используйте следующие команды:
sudo firewall-cmd --permanent --zone=public --add-port=443/tcpsudo firewall-cmd --permanent --zone=public --add-port=80/tcpsudo firewall-cmd --reload
Заключение
Вы успешно установили Redmine на свою систему CentOS. Теперь вам следует ознакомиться с документацией Redmine и узнать больше о настройке и использовании Redmine.
Если у вас возникла проблема или вы хотите оставить отзыв, оставьте комментарий ниже.
centos redmine ruby mysql mariadb apache Не используете CentOS 8?
Выберите другую ОС: центос 7 дебиан 9 убунту 18.04
Связанные руководства
- Как установить и настроить Redmine на CentOS 7
- Как установить WordPress с Apache на CentOS 7
- Как установить и защитить phpMyAdmin с помощью Apache на CentOS 7
- Как установить MariaDB на CentOS 8
- Как установить и настроить Redmine в Debian 9
- Как настроить репликацию MySQL Master-Slave на CentOS 7
- Как установить Joomla с Apache в Ubuntu 18.04