Установка Redmine

Описание

Redmine - открытое серверное веб-приложение для управления проектами и задачами (в том числе для отслеживания ошибок). Redmine написан на Ruby и представляет собой приложение на основе широко известного веб-фреймворка Ruby on Rails. Распространяется согласно GNU General Public License.

Данное решение не является лучшем на сегодняшний момент, но оно стабильное и подходит для некой библиотеки истории событий. Внешний вид конечно староват, но есть темы позволяющие немного украсить, позволит глазам не так сильно болеть.

Установка

Установка Apache

На первом этапе настройки Redmine необходимо установить и запустить веб-сервер.

Перед началом установки нового софта на ваш сервер запустите обновление индекса пакетов в операционной систем:

sudo apt update

Далее проинсталлируйте веб-сервер Apache при помощи команды:

sudo apt install apache2

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

sudo systemctl enable apache2
sudo systemctl start apache2

Также добавьте разрешающее правило в брандмауэр для Apache:

sudo ufw allow 'Apache Full'

Помимо этого, в брандмауэр необходимо добавить разрешающее правило для порта 3000, через который будет осуществляться доступ к пользовательскому интерфейсу устанавливаемого экземпляра Redmine:

sudo ufw allow 3000

Установка MySQL

Установка СУБД запускается при помощи следующей инструкции:

sudo apt install mysql-server

По завершении инсталляции MySQL активируйте установленную СУБД:

sudo systemctl enable mysql

Затем запустите MySQL:

sudo systemctl start mysql

На следующем шаге необходимо изменить некоторые наиболее уязвимые опции СУБД, использующиеся по умолчанию с помощью встроенного в MySQL специального скрипта:

sudo mysql_secure_installation

Если в ходе работы скрипта система не предложила вам установить пароль для учётной записи root, используемой для администрирования СУБД, подключитесь к MySQL при помощи команды:

sudo mysql

После чего следующей командой измените метод аутентификации пользователя root и установите для данной учётной записи новый пароль:

mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'Passw0rd';

Здесь вместо Passw0rd наберите пароль, с помощью которого пользователь root будет в дальнейшем подключаться к MySQL.

Далее выйдите из оболочки MySQL:

mysql> exit

После чего подключитесь уже под именем пользователя root:

mysql -u root -p

Подключившись к СУБД необходимо создать новую базу данных, которая будет необходима для установки Redmine, а также соответствующего пользователя с полными привилегиями. В нашем примере и создаваемая учётная запись, и база данных будут называться redmine. Естественно, на своём VPS вы можете использовать свои имена для пользователя и БД.

mysql> CREATE USER 'redmine'@'localhost' IDENTIFIED BY 'Passw0rd';
mysql> CREATE DATABASE redmine CHARACTER SET utf8mb4;
mysql> GRANT ALL PRIVILEGES ON redmine.* TO 'redmine'@'localhost';
mysql> ALTER USER 'redmine'@'localhost' IDENTIFIED WITH mysql_native_password BY 'Passw0rd';
mysql> exit

В данных командах вместо Passw0rd придумайте и введите пароль, который будет использоваться для учётной записи, которая в примере носит имя redmine.

Установка Ruby

Поскольку Redmine написан на Ruby on Rails, необходимо произвести установку Ruby. В нашем случае мы будем использовать инсталляцию Ruby при помощи RVM.

Для начала установите необходимые утилиты и зависимости:

sudo apt install curl gpg libgdbm-dev libncurses5-dev automake libtool bison libffi-dev build-essential ruby-dev libmysqlclient-dev

Затем импортируйте ключ, необходимый для инсталляции RVM:

curl -sSL https://rvm.io/pkuczynski.asc | gpg --import -

После чего запустите установку RVM:

curl -sSL https://get.rvm.io | bash -s stable
source ~/.rvm/scripts/rvm

И, наконец, проинсталлируйте Ruby. Следующая команда произведёт установку Ruby версии 3.1.4:

rvm install 3.1.4

Установка Redmine

Теперь, когда мы установили необходимые зависимости, можно приступить к установке непосредственно Redmine. Для этого, прежде всего, загрузите последнюю версию, которая доступна на странице загрузок официального сайта Redmine. В нашем примере мы загрузим дистрибутив в директорию /tmp:

cd /tmp
wget https://www.redmine.org/releases/redmine-5.0.5.tar.gz --no-check-certificate

Затем распакуйте загруженный архив и переместите его содержимое в директорию /var/www/redmine:

tar xfz redmine-5.0.5.tar.gz
sudo mv redmine-5.0.5 /var/www/redmine

После чего перейдите в данную директорию:

cd /var/www/redmine

Далее создайте конфигурационные файлы Redmine. Для этого используйте прилагаемые файлы примеров, они имеют расширение example:

cp config/database.yml.example config/database.yml
cp config/configuration.yml.example config/configuration.yml
cp public/dispatch.fcgi.example public/dispatch.fcgi

Затем откройте для редактирования файл database.yml. В нашем примере мы будем использовать текстовый редактор nano:

sudo nano config/database.yml

В тексте файла найдите раздел production и приведите его содержимое к следующему виду:

production:
  adapter: mysql2
  database: redmine
  host: localhost
  username: redmine
  password: "Passw0rd"
  encoding: utf8mb4

В данном случае замените Passw0rd на пароль пользователя redmine. После чего закройте файл database.yml сохранив внесённые изменения.

Далее запустите установку менеджера Bundler, который используется для управления зависимостями gem в Ruby-приложениях:

gem install bundler
bundle config set --local without 'development test'
bundle install
gem pristine --all
bundle add webrick

Затем сгенерируйте рандомный секретный ключ, чтобы предотвратить несанкционированное использование файлов cookie:

bundle exec rake generate_secret_token

После чего создайте структуру базы данных и вставьте данные в БД MySQL:

RAILS_ENV=production bundle exec rake db:migrate
RAILS_ENV=production REDMINE_LANG=en bundle exec rake redmine:load_default_data
⚠️
Могут быть проблемы связанные с паролем учетной записи root .

Далее создайте необходимые директории и установите соответствующие разрешения:

mkdir -p tmp/pdf
mkdir -p public/plugin_assets
chown -R $USER:$USER files log tmp public/plugin_assets
chmod -R 755 /var/www/redmine/

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

bundle exec rails server -u webrick -e production
Данная команда запуститься не в фоне, если вы хотите запустить его в фоне используйте один из возможных вариантов:
nohup bundle exec rails server -u webrick -e production &

Теперь мы можем зайти на наш redmine http://IP:3000

Для того, чтобы начать использовать только что установленный и запущенный Redmine, необходимо авторизоваться в системе. Как не сложно догадаться, для этого предназначена ссылка Войти в правом верхнем углу стартовой страницы. Первый вход осуществляется с помощью пользователя admin, имеющего пароль admin. При этом система сразу же попросит вас установить новый пароль для последующей авторизации.

После смены пароля вы уже сможете в полной мере использовать свой собственный экземпляр Redmine, установленный на вашем виртуальном сервере.

Установка Telegram email