В этой статье рассматривается вариант установки Redmine с базой данных SQlite3 на Windows и запуск его как сервиса. Все необходимые компоненты для установки приведены в статье. Для тестирования была установлена виртуальная машина с «голым» Windows 7 без пакетов обновления, без дополнительного ПО и произведена пошаговая установка по инструкции в статье.
Ответ на вопрос: «Сколько требует ресурса так установленная Redmine?»
ОЗУ: Процесс Redmine использует 2 МБ оперативной памяти, а интерпретатор Ruby «ест» 170 МБ оперативной памяти.
ЖД: Установленный «пустой» Redmine с остальным ПО занимает ~500 МБ жесткого диска.
Необходимые компоненты для установки Redmine
• Ruby — среда разработки Ruby.
• DevKit для Ruby — компонент разработчика для Ruby.
• AddTrustExternalCARoot-2048.pem — сертификат безопасности для Ruby.
• Redmine — последняя версия Redmine.
• NSSM — сервис менеджер.
Пошаговая инструкция
Часть 1, распаковка
1. Устанавливаем RubyInstaller в нужный нам каталог (например C:Ruby) и при установке ставим галочки:
«Add Ruby executables to your PATH» и «Associate .rb and .rbw files with this Ruby installation»
2. Распаковываем DevKit в C:RubyDevkit
3. Копируем сертификат в C:Rubylibruby2.1.0rubygemsssl_certs
4. Распаковываем Redmine в C:RubyRedmine
5. Распаковываем NSSM в папку Redmine C:RubyRedmineNSSM
Часть 2, установка devkit
1. Открываем консоль cmd от имени администратора.
2. Переходим в каталог Devkit:
cd C:RubyDevkit
3. Выполняем команду инициализации Devkit:
ruby dk.rb init
4. Выполняем команду установки Devkit:
ruby dk.rb install
Часть 3, установка необходимых gem`ов
1. Устанавливаем менеджер для управления gem`ами:
gem install bundler
2. Устанавливаем sqlite3 для Ruby
gem install sqlite3-ruby
3. Обновляем все gem`ы и подтверждаем обновления:
gem update
4. Сворачиваем консоль.
Часть 4, настройка redmine
1. В папке config (C:Rubyredmineconfig) открываем файл “database.yml.example”.
2. Удаляем все записи, кроме sqlite3:
# SQLite3 configuration example
production:
adapter: sqlite3
database: db/redmine.sqlite3
3. Сохраняем его уже в формате yml. (C:Rubyredmineconfigdatabase.yml)
4. В папке Redmine (C:Rubyredmine) открываем файл “Gemfile”.
5. Дописываем туда в начале: gem «sqlite3-ruby», сохраняем и выходим.
Часть 5, создание БД и первый запуск redmine
1. Возвращаемся в консоль и переходим в папку с redmine:
cd C:Rubyredmine
2. Выполняем команду:
bundle install
3. Выполняем команду:
rake generate_secret_token
4. Выполняем команду:
rake db:migrate RAILS_ENV="production"
5. Выполняем команду:
rake redmine:load_default_data RAILS_ENV="production"
и при запросе пишем “ru”
6. Запускаем сервер:
ruby script/rails s -e "production"
7. Проверяем запуск сервера по адресу:
http://localhost:3000/
8. Возвращаемся в консоль и останавливаем сервер:
Ctrl+C
Часть 6, создание сервиса для redmine
1. Сворачиваем консоль.
2. Создаем cmd файл:
del C:RubyRedmineservice.log
del C:RubyRedmineservice-err.log
set RAILS_ENV=production
cd C:RubyRedmine
C:Rubybinruby.exe -CC:RubyRedmine script/rails server webrick -e production 1>> C:RubyRedmineservice.log 2>> C:RubyRedmineservice-err.log
3. Помещаем его в C:RubyRedmine
4. Переходим в консоль и переходим в папку NSSM:
cd C:RubyRedmineNSSM
5. Заходим в папку с разрядностью вашей системой, например:
cd win64
6. Создаем сервис:
nssm install Redmine
7. В открытом окне создания сервиса, в Path устанавливаем:
c:windowssystem32cmd.exe
8. В Arguments устанавливаем:
/c C:RubyRedminestart.cmd
9. Во вкладке «Details» устанавливаем Startup type: Automatic
10. Перезагружаем ПК (или просто включаем сервис руками) и пользуемся.
Примечания
Для примера были приведены пути C:Ruby, C:RubyRedmine, C:RubyRedmineNSSM и другие; Вы можете использовать свои пути, но не забудьте изменить все команды, которые приведены в примере.
По умолчанию webrick запускает redmine на порту 3000, для изменения порта, в созданном CMD файле добавьте -p 80
del C:RubyRedmineservice.log del C:RubyRedmineservice-err.log set RAILS_ENV=production cd C:RubyRedmine C:Rubybinruby.exe -CC:RubyRedmine script/rails server webrick -e production -p 80 1>> C:RubyRedmineservice.log 2>> C:RubyRedmineservice-err.log
Используемые материалы
users.livejournal.com/_ander/56346.html
gist.github.com/luislavena/f064211759ee0f806c88
stackoverflow.com/questions/17350837/ruby-on-rails-add-gem-sqlite3-to-your-gemfile
infostart.ru/public/78834/
Автор: Tribunalrelife