Поиск по сайту:

Как установить Redmine 3 с Nginx на Ubuntu 15.10


Это руководство существует для этих версий ОС

  • Ubuntu 16.04 (Xenial Xerus)
  • Ubuntu 15.10 (Wily Werewolf)

На этой странице

  1. Предпосылки
  2. Шаг 1. Установите зависимости
  3. Шаг 2. Установите Ruby и RVM
  4. Шаг 3. Настройка базы данных MySQL для Redmine
  5. Шаг 4. Установите Phusion Passenger и Nginx
  6. Шаг 5. Настройка Nginx
  7. Шаг 6. Установите Redmine
  8. Заключение

Redmine — это инструмент управления проектами и отслеживания проблем с открытым исходным кодом, основанный на Ruby on Rails Framework. Он основан на веб-интерфейсе, поэтому вы можете использовать его с любой клиентской платформы, которая предоставляет веб-браузер. Он хорошо подходит для многоязычных команд, поскольку содержит переводы на 42 языка. Вы можете отслеживать несколько проектов в одной установке, он имеет встроенную поддержку новостей, управление документами, управление файлами, поддержку вики. Вы можете связать его с другими приложениями с помощью аутентификации LDAP и REST API.

В этом руководстве рассматривается установка Redmine 3 с Nginx в качестве веб-сервера и MySQL в качестве базы данных в операционной системе Ubuntu 15.10 (64-разрядная версия).

Предпосылки

  • Ubuntu 15.10 — 64-разрядная версия.
  • Привилегии root.

Шаг 1 — Установите зависимости

У Redmine много зависимостей, но мы можем легко установить их с помощью apt. Первый шаг — стать пользователем root, а затем обновить репозиторий Ubuntu. Все дальнейшие шаги в этом руководстве выполняются от имени пользователя root, поэтому я использую \sudo su\ вместо добавления suo к каждой команде.

sudo su
apt-get update

Установите зависимости Redmine с помощью команды apt ниже:

apt-get install mysql-server mysql-client libmysqlclient-dev imagemagick libmagickwand-dev libcurl4-openssl-dev git-core subversion

Установщик запросит новый корневой пароль MySQl, введите там новый и безопасный пароль MySQL.

Шаг 2 — Установите Ruby и RVM

На этом этапе мы установим последнюю версию RVM и Ruby 2.0. Стабильная версия Redmine 3.2 поддерживает Ruby версии 2.0, поэтому мы можем использовать ее здесь. RMV (Ruby Version Manager) — это удобный инструмент командной строки, который позволяет вам устанавливать, управлять и работать с несколькими средами Ruby.

gpg --keyserver hkp://keys.gnupg.net --recv-keys D39DC0E3
curl -L https://get.rvm.io | bash -s stable --ruby=2.0.0

Теперь нам нужно перезагрузить RVM и добавить его в .bashrc для автоматической перезагрузки:

source /usr/local/rvm/scripts/rvm
echo '[[ -s "/usr/local/rvm/scripts/rvm" ]] && source "/usr/local/rvm/scripts/rvm"' >> ~/.bashrc

Шаг 3 — Настройте базу данных MySQL для Redmine

Мы создадим базу данных и пользователя базы данных для установки Redmine. Войдите в оболочку MySQL с пользователем root и своим паролем:

mysql -u root -p
TYPE YOUR PASSWORD

Затем создайте новую базу данных с именем \redmine\ и нового пользователя с именем redmine и паролем redmine (используйте лучший пароль при установке, это всего лишь пример), а затем предоставьте привилегии пользователю redmine для База Редмайн.

create database redmine;
create user identified by 'redmine';
flush privileges;
q\

База данных и пользователь созданы.

Шаг 4 — Установите Phusion Passenger и Nginx

Phusion Passenger — это веб-сервер и сервер приложений, который можно интегрировать с веб-серверами Apache и Nginx. Он поддерживает несколько языков: Ruby, Python и Nodejs. Его легко использовать и быстро.

В этой части мы установим Phusion Passenger и интегрируем его с Nginx. Redmine будет работать под управлением веб-сервера Nginx. Установите Passenger с помощью команды gem, а затем установите модульpassenger-nginx-module.

gem install passenger --no-ri --no-rdoc
passenger-install-nginx-module

Команда спросит вас о поддерживаемом языке, выберите здесь Ruby и Python.

Вам будет задан вопрос об установке Nginx, выберите \Да: загрузить, скомпилировать и установить Nginx для меня (рекомендуется)\.

Наконец, вас спросят о каталоге установки Nginx, используйте по умолчанию /opt/nginx/ и нажмите \Enter\.

Шаг 5 — Настройте Nginx

Перейдите в каталог установки и отредактируйте файл nginx.conf с помощью редактора, здесь я воспользуюсь редактором vim.

cd /opt/nginx/conf/
vim nginx.conf

В директиве server измените имя сервера на желаемое доменное имя и добавьте корневой веб-каталог:

server {
  .......
  listen  80;
  server_name www.redmine.me;
  root /var/www/redmine/public;
  passenger_enabled on;
  client_max_body_size      10m; # Max attachemnt size
  ........
}

Закомментируйте следующие строки:

#location / {
#    root   html;
#    index  index.html index.htm;
#}

Сохраните файл и выйдите.

Далее мы настроим Nginx для systemd. Перейдите в каталог systemd и создайте новый служебный файл nginx.service.

cd /lib/systemd/system/
vim nginx.service

Вставьте скрипт Nginx для systemd ниже:

[Unit]
Description=The NGINX HTTP and reverse proxy server
After=syslog.target network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
PIDFile=/opt/nginx/logs/nginx.pid
ExecStartPre=/opt/nginx/sbin/nginx -t
ExecStart=/opt/nginx/sbin/nginx
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true

[Install]
WantedBy=multi-user.target

Сохраните файл и выйдите.

Перезагрузите службы systemd и попробуйте запустить Nginx с помощью команды systemctl:

systemctl daemon-reload
systemctl start nginx

Если вы хотите проверить Nginx, проверьте открытый порт 80 с помощью netstat:

netstat -plntu | grep nginx

tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      4871/nginx

Шаг 6 — Установите Redmine

Создайте новый каталог для установки Redmine, здесь я буду использовать каталог /var/www/.

mkdir -p /var/www/

Перейдите в каталог /var/www/ и загрузите redmine с помощью команды svn:

cd /var/www/
svn co https://svn.redmine.org/redmine/branches/3.2-stable redmine

Войдите в каталог redmine и скопируйте файл конфигурации и файл конфигурации базы данных:

cd redmine
cp config/configuration.yml.example config/configuration.yml
cp config/database.yml.example config/database.yml

Затем отредактируйте файл database.yml с помощью vim:

vim config/database.yml

В производственной строке заполните данные для базы данных, пользователя базы данных и пароль. Используйте данные базы данных, которые вы создали в главе 3.

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

Сохраните файл и выйдите из редактора.

В каталоге redmine создайте новый каталог и измените владельца на www-data:

mkdir -p tmp tmp/pdf public/plugin_assets
sudo chown -R www-data:www-data files log tmp public/plugin_assets
sudo chmod -R 775 files log tmp public/plugin_assets

Затем установите сборщик и зависимости gem для Redmine:

gem install bundler
bundle install --without development test

Теперь создайте секретный токен, а затем создайте базу данных:

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

Перезапустите Nginx и зайдите в домен redmine с помощью веб-браузера:

systemctl restart nginx

Посетите установку redmine, в моем случае: www.redmine.me

Войдите на страницу администратора: www.redmine.me/login

Пользователь и пароль по умолчанию — admin.

Создайте новый образец проекта.

Пример страницы проекта.

Установка Redmine с Nginx и MySQL успешно завершена.

Заключение

Redmine — это веб-приложение для управления проектами и отслеживания проблем. Redmine — это кроссплатформенное приложение, поэтому мы можем запускать его в Windows, Linux или Mac OS. Он поддерживает множество различных баз данных, таких как MySQL, PostgreSQL, Microsoft SQL Server и SQLite. Redmine прост в установке и настройке, мы можем использовать Apache или Nginx в качестве веб-сервера. Redmine очень мощный и имеет множество функций, таких как многоязычная поддержка, управление файлами, вики, REST API и т. д. Redmine — одно из лучших решений с открытым исходным кодом для создания собственного управления проектами с отслеживанием проблем.