Введение

Redmine – это мощный и гибкий инструмент управления проектами с открытым исходным кодом, который обеспечивает отслеживание проблем, учет рабочего времени, функциональность вики и интеграцию с системой контроля версий. Он построен на Ruby on Rails и поддерживает множество баз данных, включая MySQL и PostgreSQL. В этом руководстве мы рассмотрим пошаговый процесс установки Redmine на Ubuntu 22.04.

Необходимые условия

Прежде чем мы начнем, убедитесь, что ваша система соответствует следующим требованиям:

  • Свежая установка Ubuntu 22.04
  • Пользователь, не являющийся пользователем root, с привилегиями sudo
  • Функциональное подключение к Интернету
  • Доменное имя (необязательно, но рекомендуется)

Шаг 1: Обновление системных пакетов

Сначала обновите список пакетов и обновите существующие пакеты, чтобы убедиться, что ваша система находится в актуальном состоянии:

sudo apt update && sudo apt upgrade -y

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

Redmine требует нескольких зависимостей, включая Ruby, Bundler и сервер баз данных. Сначала мы установим эти пакеты.

sudo apt install -y curl gnupg2 git-core libmysqlclient-dev imagemagick libmagickwand-dev libpq-dev build-essential libssl-dev libreadline-dev zlib1g-dev

Шаг 3: Установите Ruby

Ubuntu 22.04 не включает последнюю версию Ruby по умолчанию, поэтому мы установим Ruby с помощью rbenv.

git clone https://github.com/rbenv/rbenv.git ~/.rbenv
cd ~/.rbenv && src/configure && make -C src
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
источник ~/.bashrc

git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build
echo 'export PATH="$HOME/.rbenv/plugins/ruby-build/bin:$PATH"' >> ~/.bashrc
источник ~/.bashrc

Теперь установите Ruby:

rbenv install 3.2.0 # Используем последнюю стабильную версию
rbenv global 3.2.0
ruby -v # Проверить установку

Шаг 4: Установите сервер баз данных

Redmine поддерживает MySQL и PostgreSQL. В этом руководстве мы будем использовать MySQL.

sudo apt install -y mysql-server

Защитите установку MySQL:

sudo mysql_secure_installation

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

sudo mysql -u root -p

В оболочке MySQL выполните следующие команды:

CREATE DATABASE redmine CHARACTER SET utf8mb4;
CREATE USER 'redmine'@'localhost' IDENTIFIED BY 'strongpassword';
GRANT ALL PRIVILEGES ON redmine.* TO 'redmine'@'localhost';
СБРОСИТЬ ПРИВИЛЕГИИ;
EXIT;

Шаг 5: Установите Redmine

Скачайте и распакуйте последнюю стабильную версию Redmine:

cd /var/www/
wget https://www.redmine.org/releases/redmine-5.0.0.tar.gz
sudo tar -xvf redmine-5.0.0.tar.gz
sudo mv redmine-5.0.0 redmine
cd redmine

Настройте подключение к базе данных:

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

Измените раздел MySQL следующим образом:

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

Шаг 6: Установка Bundler и зависимостей

Выполните следующие команды для установки Bundler и необходимых гемов:

gem install bundler
bundle install --without development test

Шаг 7: Настройка базы данных

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

bundle exec rake db:migrate RAILS_ENV=production
bundle exec rake redmine:load_default_data RAILS_ENV=production

Шаг 8: Настройка прав доступа к файлам

Убедитесь, что Redmine имеет правильные разрешения:

sudo mkdir -p tmp tmp/pdf public/plugin_assets
sudo chown -R www-data:www-data файлы log tmp public/plugin_assets
sudo chmod -R 755 файлы log tmp public/plugin_assets

Шаг 9: Запустите Redmine

Вы можете запустить Redmine с помощью встроенного сервера WEBrick:

bundle exec rails server -e production

В качестве альтернативы настройте Redmine на запуск с Passenger и Apache или Nginx для использования в производстве.

Шаг 10: Доступ к Redmine

Откройте веб-браузер и перейдите по адресу:

http://your-server-ip:3000

Войдите в систему с учетными данными по умолчанию:

  • Имя пользователя: admin
  • Пароль: admin

Заключение

Вы успешно установили Redmine на Ubuntu 22.04. Для производственных сред следует настроить обратный прокси с Nginx или Apache, включить SSL и настроить автоматическое резервное копирование. Теперь Redmine готов к эффективному управлению вашими проектами!