Тематические термины: Redmine , Apache , Ubuntu .
Установка Redmine на Ubuntu выполняется в несколько несложных этапов, так как все нужные пакеты находятся в репозитории данного дистрибутива Linux, и в ходе установки инсталлируются все зависимости и выполняется конфигурирование системы автоматически. При написании инструкции применялась Ubuntu Server 16.04.05.
Redmine является веб-приложение, поэтому его удобнее всего публиковать с помощью веб-сервера. Мы рассмотрим вариант использования Apache, так как данный программный продукт легко интегрируется с passenger, который является связующим звеном между Ruby on rails и веб-сервером.
В данной статье я делаю упор на максимальную простоту развертывания Redmine — без ручной установки ruby, gems, и так далее. Она не даст понимания, как работает сервер, но позволит быстро развернуть сервис (буквально, за 10 минут).
Сервер баз данных
В качестве СУБД будем использовать MariaDB:
apt install mariadb-server
Разрешаем запуск, стартуем сервис:
systemctl enable mysql
systemctl start mysql
Задаем пароль для суперпользователя mariadb:
mysqladmin -u root password
Установка Redmine
Для корректной установки нужно поставить отдельно пакет — без него установка redmine будет заканчиваться ошибкой:
apt install ruby-mysql2
В Ubuntu пакет для установки Redmine есть в репозитории. Вводим команду:
apt install redmine
… в результате ее выполнения будет скачано и установлено множество зависимостей. Также система спросит, какую СУБД необходимо использовать — выбираем MySQL и вводим пароль для пользователя redmine, который будет создан в СУБД.
После завершения установки, система автоматически создаст базу и внесет необходимые настройки.
Выполняем тестовый запуск Redmine:
cd /usr/share/redmine/app
rails server webrick -e production -b 0.0.0.0
* первой командой мы переходим в каталог, в который устанавливается redmine; второй командой мы запускаем Ruby on Rails на 3000 порту и на всех сетевых адаптерах.
Открываем браузер и переходим по адресу http://<IP-адрес сервера>:3000 — мы должны увидеть домашнюю страницу Redmine:
Пробуем войти в систему — логин и пароль по умолчанию admin / admin .
Настройка веб-сервера
Для автоматической публикации Redmine в качестве веб-приложения мы будем использовать apache и модуль passenger. Для их установки вводим:
apt install apache2 libapache2-mod-passenger
Создаем виртуальный домен:
vi /etc/apache2/sites-enabled/redmine.conf
<VirtualHost *:80>
ServerAdmin admin@company.ru
ServerName redmine.srv.local
DocumentRoot /usr/share/redmine/public
RailsEnv production
RailsBaseURI /redmine
PassengerResolveSymlinksInDocumentRoot on
</VirtualHost>
* где *:80 указывает слушать на всех сетевых интерфейсах, 80 порту; ServerName — имя виртуального домена (тут нужно задать Ваш URL, который будет использоваться для Redmine); DocumentRoot — домашняя директория Redmine; RailsEnv — рабочее окружение, в котором запустится приложение.
Внесем настройки в модуль passenger:
vi /etc/apache2/mods-enabled/passenger.conf
Приводим его к виду:
<IfModule mod_passenger.c>
PassengerRoot /usr/lib/ruby/vendor_ruby/phusion_passenger/locations.ini
PassengerDefaultRuby /usr/bin/ruby
PassengerRuby /usr/bin/ruby
PassengerDefaultUser www-data
</IfModule>
Задаем владельца для каталогов:
chown -R www-data:www-data /usr/share/redmine
chown -R www-data:www-data /var/cache/redmine/default
Разрешаем автозапуск apache и перезапускаем сервис:
systemctl enable apache2
systemctl restart apache2
Создаем А-запись в локальном DNS или прописываем в файл host запись для нашего hostname (в данном случае, redmine.srv.local). Открываем браузер и переходим по адресу http://redmine.srv.local — мы должны увидеть домашнюю страницу Redmine.