Howto - Запуск Redmine на mongrel как служба для Windows - PullRequest
6 голосов
/ 06 мая 2010

Я использую Redmine в Mongrel в качестве менеджера проектов и использую командный файл (start-redmine.bat), чтобы запустить redmine в mongrel. Есть две проблемы с моей настройкой: 1. У меня работает IIS на сервере, который занимает порт HTTP (80) 2. Файл start-redmine.bat должен периодически проверяться, чтобы убедиться, что он остановлен после перезапуска, вызванного службой обновления Windows.

для первой проблемы у меня нет выбора, кроме как запустить mongrel для порта, подобного 3000, а для второй проблемы мне нужно создать службу Windows, которая автоматически запускается в фоновом режиме при запуске Windows; и вот беда!

Есть как минимум 3 способа запуска redmine как службы, о которых я знаю; Ни один из них не может удовлетворить представление производительности по этому вопросу. вы можете прочитать о них на как настроить приложение rails (redmine) для запуска в качестве службы на windows?

Я попробовал их все. Самый простой способ настроить такой сервис - использовать подход mongrel_service; в 3 строки командования все готово. но производительность значительно ниже, чем при запуске этого пакетного файла ...


Теперь я хочу показать вам мой подход:

Сначала предположим, что у нас установлен ruby ​​в c: \ ruby ​​, и мы ввели команду gem install mongrel , чтобы установить монгрел в c: \ ruby ​​\ bin Также предположим, что мы установили Redmine в папку, такую ​​как c: \ redmine ; и у нас есть путь ruby ​​(т.е. c: \ ruby ​​\ bin ) в нашей переменной окружения PATH.

Теперь Загрузите и установите средства Windows NT Resource Kit Tools с веб-сайта Microsoft. Откройте инструмент командной строки, входящий в комплект Resource Kit (из меню «Пуск»). Используйте instsrv для установки фиктивной службы Redmine с помощью следующей команды:

"[path-to-instsrv.exe] \ instsrv" Redmine "[path-to-srvany.exe] \ srvany.exe"

в моем случае (это случай по умолчанию) это было что-то вроде этого:

"C: \ Program Files \ Windows Resource Kits \ Tools \ instsrv" Redmine "C: \ Program Files \ Windows Resource Kits \ Tools \ srvany.exe"

Теперь создайте командный файл. Откройте блокнот и вставьте в него эти инструкции, а затем сохраните его как " c: \ redmine \ start-redmine.bat "

@ эхо выключено
cd c: \ redmine \
mongrel_rails start -a 0.0.0.0 -p 3000 -e производство

Теперь нам нужно настроить ту фиктивную службу, которую мы создали ранее. СМОТРЕТЬ, ЧТО ВЫ ДЕЛАЕТЕ ЗДЕСЬ, ИЛИ ВЫ МОЖЕТЕ ПОПРЯМИТЬ СВОИ ОКНА . Чтобы настроить эту службу, откройте редактор реестра Windows (Пуск -> Выполнить -> regedit) и перейдите к этому узлу:

HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ Redmine

Щелкните правой кнопкой мыши узел «Redmine» и, используя контекстное меню, создайте новый ключ с именем Параметры (Новый -> Ключ). Щелкните правой кнопкой мыши «Параметры» и создайте свойство строкового значения с именем Приложение . Сделайте это снова и создайте другое строковое значение с именем AppParameters . Теперь дважды щелкните «Приложение» и поместите cmd.exe в раздел «Значения данных». Затем дважды щелкните «AppParameters» и поместите / C «C: \ redmine \ start-redmine.bat» в раздел «Значение».

Мы закончили! выполните эту команду для запуска redmine на mongrel как службе:

чистый старт Redmine

Edit: Если вы собираетесь использовать почтовые службы Redmine и у вас есть такой антивирус, как McAfee, убедитесь, что вы сказали антивирусу разрешить отправку писем по протоколу ruby, иначе почтовый сервис не заработает.

1 Ответ

1 голос
/ 08 мая 2010

Спасибо за руководство! Кстати, если вы работаете в Windows 2008, используйте предварительную версию сервиса mongrel, иначе она не будет работать для вас:

gem install mongrel_service --prerelease

http://groups.google.com/group/comp.lang.ruby/browse_thread/thread/1adf2a73c75c2884/38267c06198e282e?show_docid=38267c06198e282e

...