Разворачиваем Redmine на виртуальном хостинге

Redmine — это баг трекинг система (система управлением ошибками), еще ее любят называть системой управления проектами. Redmine разработан на Ruby On Rails. Является открытым исходным кодом и распространяется под лицензией в GNU General Public License v2 (GPL).

Для установки Redmine на виртуальный хостинг нам понадобиться сервер с поддержкой Ruby on Rails, SSH доступ, а также доступ в панель управления cPanel.

Установка Redmine

1. Создаем базу данных в cPanel виртуального хостинга

Заходим в панель управления cPanel, находим раздел «Базы данных MySQL», создаем базу данных.

Создаем пользователя и добавляем его к новой базе данных с привилегиями (ALL PRIVILEGES).

2. Создание приложения Ruby on Rails

В панели управления cPanel хостинга находим раздел «Ruby on Rails».

3. Выполняем Shell команды

Shell — это командный язык, который может выполнять команды введенные с терминала, а также команды хранящиеся в файле.

Коннектимся по SSH к аккаунту нашего хостинга. Если все прошло успешно, попадаем в корневую директорию хостинга: /home/username.

Переходим в каталог нашего приложения, с помощью команды:

cd ~/rails_apps/redmine/

с помощью команды удаляем предустановленный контент:

rm -rf *

Теперь нам необходимо залить файлы Redmine в ранее созданный каталог. Для того, чтобы понять, какую версию Redmine необходимо скачать, проверяем версии файлов на сервере, спомощью команды <название_пакета> -v:

ruby -v
rails -v
bundler -v

можно ввести все одной строкой:

ruby -v & rails -v & bundler -v

На официальном сайте www.redmine.org можно посмотреть актуальные версии Redmine и скачать ту, которая подходит под вашу версию Ruby, Rails.

К сожалению, мои версии: ruby — 1.8.7, rails — 2.3.18, поэтому выше версии: redmine-1.3.2 http://www.redmine.org/releases/1.x/, ничего поставить не смогу.

Закачиваем архив redmine-1.3.2.zip в каталог: /home/USERNAME/rails_apps/redmine, с помощью команды:

wget http://www.redmine.org/releases/1.x/redmine-1.3.2.zip

распаковываем архив используя команду unzip:

unzip redmine-1.3.2.zip

В каталоге: /home/USERNAME/rails_apps/redmine/redmine-1.3.2, образуется каталог redmine-1.3.2, переходим в него с помощью команды cd:

cd redmine-1.3.2

перемещаем весь контент в наш домашний каталог: /home/USERNAME/rails_apps/redmine

mv * ..

пока находимся в каталоге: /home/USERNAME/rails_apps/redmine/redmine-1.3.2, выполняем команду:

rm -rf *

возвращаемся в каталог: /home/USERNAME/rails_apps/redmine/

cd ..

удаляем ненужное содержимое:

rmdir redmine-1.3.2
rm redmine-1.3.2.zip

Таким образом результат всех наших действий — это извлеченный контент архива в домашней директории нашего проекта: /home/USERNAME/rails_apps/redmine средствами SSH доступа.

4. Базовая конфигурация Redmine

Для запуска Redmine необходимо его сконфигурить. Снова подключаемся по SSH нашего сервера и переходим в главную директорию: /home/USERNAME/rails_apps/redmine:

cd ~/rails_apps/redmine/

перемещаемся в каталог: config/, с помощью команды cd:

cd config/

открываем файл environment.rb, с помощью текстового редактора vim:

vim environment.rb

комментируем (#) следующую строчку:

#RAILS_GEM_VERSION = '2.3.14' unless defined? RAILS_GEM_VERSION

переименовываем файл database.yml.example на сервере в database.yml, с помощью команды:

cp database.yml.example database.yml

открываем для редактирования:

vim database.yml

теперь в конфигурационном файле database.yml, в секции «production», подключаем базу данных, которую создали на первом этапе:

production:
  adapter: mysql
  database: testroot_bugtracking
  host: localhost #обязательно указываем реальной хост сервера базы данных
  username: testroot_bt
  password: ~%55@z755vlM55}uq
  encoding: utf8

Запускаем команду, которая создает сессию для Ruby приложения:

RAILS_ENV=production rake config/initializers/session_store.rb

Заполняем пустую базу, стандартными данными, Redmine.

Для этого выполняем следующие команды в терминале:

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

Если всё прошло успешно, наблюдаем в терминале вывод:

Default configuration data loaded.

5. Завершение установки.

Возвращаемся в панель управления cPanel нашего виртуального хостинга, в раздел «Ruby on Rails», где создаем замену для приложения redmine.

Запускаем Redmine приложение.

Теперь пробуйте запускать ваш сайт в браузере: http://bt.evgmoskalenko.com/.

Настройка Email / SMTP-серверов в Redmine

Снова подключаемся через SSH, переходим в каталог: /rails_apps/redmine/config/

cd ~/rails_apps/redmine/config/

переименовываем файл configuration.yml.example на сервере в configuration.yml:

cp configuration.yml.example configuration.yml

открываем для редактирования:

vim configuration.yml

Находим в файле раздел default: и прописываем ему следующие настройки.

Yandex (почта для домена):

# default configuration options for all environments
default:
  # Outgoing emails configuration (see examples above)
  email_delivery:
    delivery_method: :async_smtp
    smtp_settings:
      address: smtp.yandex.ru
      port: 25
      ssl: true
      enable_starttls_auto: true
      domain: evgmoskalenko.com
      authentication: :login
      user_name: "evg@evgmoskalenko.com"
      password: "password"

Gmail:

Для почты Gmail, задаем несколько иные настройки:

# default configuration options for all environments
default:
  # Outgoing emails configuration (see examples above)
  email_delivery:
    delivery_method: :smtp
    smtp_settings:
      enable_starttls_auto: true
      address: "smtp.gmail.com"
      port: 587
      domain: "smtp.gmail.com"
      authentication: :plain
      user_name: "evgmoskalenko@gmail.com"
      password: "password"

Вопросы задаем в комментариях.

Похожие заметки
Последние заметки
Если вам понравилась статья, вы можете подписаться на RSS или e-mail рассылку. Для получения обновлений по электронной почте, введите ваш e-mail адрес в эту форму (доставка от SmartResponder):

16 комментариев

  1. Владимир,
    1

    Как я понял, это аналог MantisBT, который работает на php. А ruby, на данный момент, имеет больший функционал. Спасибо автору за настройки, а то провозился самостоятельно 2,5 часа, так и не запустив. Даже до сих не знаю ошибку в моих действиях. А тут просто следовал за статьей, всё работает. Займусь тестированием. Спасибо.

  2. Евгений Москаленко,
    2

    Пожалуйста, Владимир :-)

  3. Александр,
    3

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

    А как это сделать – теперь понятно. Буду устанавливать систему и настраивать параметры согласно описанному в статье. Возникнут вопросы — спрошу. Спасибо за нужную информацию.

  4. Денис,
    4

    Спасибо за инструкцию, действительно тема полезная, но много времени отбирает установка. Хотя только в первый раз. Также есть хороший аналог под названием ProjectPier. Она конечно попроще, но зато рассчитана на большие масштабы.

    А в соединении с Linux всё работает достаточно быстро.

  5. igor,
    5

    Отличный пост! очень помог! спасибо!

  6. Евгений Москаленко,
    6

    Рад, что помог :-)

  7. simplero,
    7

    Отличный пост

  8. Евгений Москаленко,
    8

    Спасибо.

  9. Людмила,
    9

    Ух, сколько много матерных слов! Пожалуй, пойду спрыгну со стула. Женским умом это точно не понять (хоть и не блондинка).

  10. Игорь,
    10

    Здравствуйте Евгений.

    Вопрос не по статье,у вас что за тема установлена?

    И еще,конкурс комментаторов на данный момент актуален или нет?

  11. Евгений Москаленко,
    11

    Конкурс комментаторов пока неактивен.

    Шаблон сам делал.

  12. Глазурь,
    12

    Очень хорошо изложен материал, даже не смотря на то, что он далеко не из самых легких. И отдельное спасибо за скрины, так как не все «чайники» могут сходу понять что и где жмякать =)

  13. А как Вы хотите разместить этот гайд, с моими картинками и текст один в один?

  14. Nellar,
    14

    А вот это интересно , нигде больше не видел такого подробного и полного гайда, благодарю

  15. Евгений Москаленко,
    15

    Спасибо :-)

  16. qwelop,
    16

    Все доступно и понятно. Интересно было почитать, спасибо, Евгений

Оставить комментарий